本文整理匯總了C#中System.Test.GetElapsed方法的典型用法代碼示例。如果您正苦於以下問題:C# Test.GetElapsed方法的具體用法?C# Test.GetElapsed怎麽用?C# Test.GetElapsed使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類System.Test
的用法示例。
在下文中一共展示了Test.GetElapsed方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。
示例1: TestConcurrency
/// <summary>
/// 並發測試
/// </summary>
/// <param name="action">各線程執行的方法</param>
/// <param name="threadNumber">啟動線程數,默認為1個</param>
public static void TestConcurrency( Action action,int threadNumber = 1 ) {
var test = new Test();
test.Start();
Console.WriteLine( "並發模擬測試開始" );
var threads = new List<System.Threading.Thread>();
var resetEvent = new ManualResetEvent( false );
for ( int i = 0; i < threadNumber; i++ ) {
var thread = new System.Threading.Thread( number => {
Console.WriteLine( "線程{0}執行掛起操作,線程號:{1},耗時:{2}秒", number,Thread.ThreadId, test.GetElapsed() );
resetEvent.WaitOne();
action();
Console.WriteLine( "線程{0}執行任務完成,線程號:{1},耗時:{2}秒", number, Thread.ThreadId, test.GetElapsed() );
} );
thread.Start( i + 1 );
threads.Add( thread );
}
Console.WriteLine( "暫停50毫秒後喚醒所有線程" );
Thread.Sleep( 50 );
resetEvent.Set();
threads.ForEach( t => t.Join() );
Console.WriteLine( "執行完成,即將退出,耗時:{0}秒", test.GetElapsed() );
}