LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

C#Task處理比較耗時任務

admin
2025年6月12日 11:34 本文熱度 523
Task跨線程訪問的另兩種方式:

TaskScheduler.FromCurrentSynchronizationContext():作用是讓你能在特定的同步上下文(通常是UI線程)中調度任務,從而確保界面更新等操作在正確的線程上執行。

TaskScheduler:調度任務的機制。

FromCurrentSynchronizationContext():獲取當前線程的同步上下文的調度器。

?
第一種方式不可用于處理耗時任務,否則會卡UI。第二種可以處理相對耗時的任務,10幾20秒的沒問題。

案例代碼如下:按下按鈕后,都會對label標簽進行修改,但是第一個不能加延時,加了后會卡UI,第二個加了延時后處理任務是界面可以照常拖到。

namespace _023_Task處理耗時任務{    public partial class Task處理耗時任務 : Form    {        public Task處理耗時任務()        {            InitializeComponent();        }
        //TaskScheduler.FromCurrentSynchronizationContext()        //的作用是讓你能在特定的同步上下文(通常是UI線程)中調度任務,從而確保界面更新等操作在正確的線程上執行。        //TaskScheduler:調度任務的機制        //FromCurrentSynchronizationContext() 獲取當前線程的同步上下文的調度器。
        //此方法不適合耗時的UI控件        private void btUpdate_Click(object sender, EventArgs e)        {            Task task = new Task(() =>            {                //Thread.Sleep(5000);//如果添加延時的話,會卡UI                this.lbl1.Text = "跨線程訪問的一種方式,此方式不適合處理耗時的任務";            });            task.Start(TaskScheduler.FromCurrentSynchronizationContext());        }
        //可以處理一定的耗時任務        private void btUpdate2_Click(object sender, EventArgs e)        {            var sch1 = TaskScheduler.FromCurrentSynchronizationContext();//同步上下文            //先定義task執行耗時任務            Task task = new Task(() =>            {                Thread.Sleep(5000);//模擬耗時任務                  });            //再用continuewith執行跨線程訪問            task.ContinueWith(t =>            {                this.lbl1.Text"跨線程訪問的一種方式,此方式可以處理比較耗時的任務";            },sch1);            task.Start();        }    }}


閱讀原文:https://mp.weixin.qq.com/s/g1Unbxgg8CmptVCXrEpqNQ


該文章在 2025/6/12 12:08:34 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved

黄频国产免费高清视频,久久不卡精品中文字幕一区,激情五月天AV电影在线观看,欧美国产韩国日本一区二区
亚洲日本va一区二区sa | 亚洲国产精品久久久久柚木 | 综合专区视频精品 | 专区在线观看中文字幕AV | 午夜福利国产在线观看1 | 亚洲欧美偷国产精品三区 |