欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

c#判斷代碼是否執(zhí)行超時的幾種方式總結

 更新時間:2023年01月24日 14:22:33   作者:以有崖求無崖  
這篇文章主要介紹了c#判斷代碼是否執(zhí)行超時的幾種方式總結,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

c#判斷代碼是否執(zhí)行超時

一、使用委托

delegate void dg();
dg dgCase;
void method()
{
? ? ?dgCase = () =>
? ? ?{
? ? ? ? ? Thread.Sleep(10000);
? ? ? ? ? MessageBox.Show("代碼執(zhí)行完畢!");
? ? ?};
? ? ?WaitHandle wh = dgCase.BeginInvoke(null, null).AsyncWaitHandle;
? ? ?if (!wh.WaitOne(3000))
? ? ?{
? ? ? ? ? MessageBox.Show("執(zhí)行已過了3秒!");
? ? ?}
? ? ?return;
}

二、使用Task

Task t = new Task(() => {
? ? ?Thread.Sleep(10000);
? ? ?MessageBox.Show("代碼執(zhí)行完畢!");
});
t.Start();
if(!t.Wait(3000))
{
? ? ?MessageBox.Show("執(zhí)行已過了3秒!");
}
return;

三、使用Timer

void method()
{
? ? ?System.Timers.Timer time = new System.Timers.Timer(3000) { Enabled = true };
? ? ?time.Elapsed += (x, j) =>
? ? ?{
? ? ? ? ? MessageBox.Show("執(zhí)行已過了3秒!");
? ? ? ? ? time.Stop();
? ? ?};
? ? ?Thread.Sleep(10000);
? ? ?MessageBox.Show("代碼執(zhí)行完畢!");
? ? ?time.Stop();
? ? ?return;
}

四、使用Thread

void ThreadMethod()
{
? ? ?Thread t = new Thread(()=>
? ? ?{
? ? ? ? ? Thread.Sleep(10000);
? ? ? ? ? MessageBox.Show("代碼執(zhí)行完畢!");
? ? ?});
? ? ?t.Start();
? ? ?bool isOver = t.Join(3000);
? ? ?if(!isOver)
? ? ?{
? ? ? ? ? MessageBox.Show("執(zhí)行已過了3秒!");
? ? ?}
}

總結

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
 

相關文章

  • 關于C#中GUI編程的標準事件問題

    關于C#中GUI編程的標準事件問題

    這篇文章主要介紹了C#中GUI編程的標準事件,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-01-01
  • UGUI繪制動態(tài)曲線

    UGUI繪制動態(tài)曲線

    這篇文章主要為大家詳細介紹了UGUI繪制動態(tài)曲線的具體方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-08-08
  • Unity游戲開發(fā)之2048游戲的實現(xiàn)

    Unity游戲開發(fā)之2048游戲的實現(xiàn)

    2048是一款數字益智游戲,初始數字則是由2+2組成的基數4。在操作方面的不同則表現(xiàn)為一步一格的移動,變成更為爽快的一次到底。相同數字的方況在靠攏、相撞時會相加。本文將通過Unity3D實現(xiàn)這一游戲,需要的可以參考一下
    2022-03-03
  • C#調用Windows的API實現(xiàn)窗體動畫

    C#調用Windows的API實現(xiàn)窗體動畫

    在VF、VB、PB的應用中,有些無法通過語言工具本身來完成的或者做得不理想的功能,我們會考慮通過Windows的API來完成。本文就來通過調用Windows的API實現(xiàn)窗體動畫,感興趣的可以嘗試一下
    2022-11-11
  • C#創(chuàng)建一個Word并打開的方法

    C#創(chuàng)建一個Word并打開的方法

    這篇文章主要介紹了C#創(chuàng)建一個Word并打開的方法,實例分析了C#操作word的常用技巧,非常具有實用價值,需要的朋友可以參考下
    2015-04-04
  • C#?日歷類功能的實例

    C#?日歷類功能的實例

    本文通過實例代碼給大家介紹了C#日歷類的相關知識,非常不錯,具有參考借鑒價值,需要的朋友參考下吧
    2017-06-06
  • C# Bitmap圖像處理加速的實現(xiàn)

    C# Bitmap圖像處理加速的實現(xiàn)

    本文主要介紹了C# Bitmap圖像處理加速的實現(xiàn),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • C#中DataSet,DataTable,DataView的區(qū)別與用法

    C#中DataSet,DataTable,DataView的區(qū)別與用法

    這篇文章介紹了C#中DataSet,DataTable,DataView的區(qū)別與用法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • C#入門教程之集合ArrayList用法詳解

    C#入門教程之集合ArrayList用法詳解

    這篇文章主要介紹了C#入門教程之集合ArrayList用法,結合具體實例分析了C#中集合的概念、功能、創(chuàng)建與使用方法,需要的朋友可以參考下
    2017-06-06
  • Unity使用EzySlice實現(xiàn)模型多邊形順序切割

    Unity使用EzySlice實現(xiàn)模型多邊形順序切割

    這篇文章主要為大家詳細介紹了Unity使用EzySlice實現(xiàn)模型多邊形順序切割,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-07-07

最新評論