在上一个线程完成后启动另一个线程

本文关键字:线程 启动 另一个 上一个 | 更新日期: 2023-09-27 18:31:44

嗨,我在Windows应用商店应用程序上工作,我有一个页面,当上一个线程完成工作时,我需要启动线程。有什么解决办法吗?我找到很棒的选择,但它们适用于 NET。现在我使用 ThreadPoolTimer 并且每个线程在不同的时间启动,但这不是好的解决方案,我认为必须有更好的解决方案。

  TimeSpan delay = TimeSpan.FromMinutes(3);
ThreadPoolTimer DelayTimer = ThreadPoolTimer.CreateTimer(
    (source) =>
    {
        // 
        // TODO: Work
        // 
        // 
        // Update the UI thread by using the UI core dispatcher.
        // 
        Dispatcher.RunAsync(
            CoreDispatcherPriority.High,
            () =>
            {
                // 
                // UI components can be accessed within this scope.
                // 
            });
    }, delay);

在上一个线程完成后启动另一个线程

您可以将 TPL 与 ContinueWith 语句一起使用,如下所示:

Task x = Task.Factory.StartNew(() =>
         {
           DoSomething();
         }
     ).ContinueWith((task) =>
         {
           DoSomething();
         });