Материал из .Net Framework эксперт
Sleeping Threads
#include "stdafx.h"
using namespace System;
using namespace System::Threading;
ref class MyThread
{
public:
static void ThreadFunc();
};
void MyThread::ThreadFunc()
{
String ^threadName = Thread::CurrentThread->Name;
for (int i = 0; i < 101; i++)
{
if (i % 10 == 0)
Console::WriteLine("{0} {1}", threadName, i.ToString());
Thread::Sleep(10);
}
}
void main()
{
Thread ^thr1 = gcnew Thread(gcnew ThreadStart(&MyThread::ThreadFunc));
Thread ^thr2 = gcnew Thread(gcnew ThreadStart(&MyThread::ThreadFunc));
thr1->Name = "Thread1";
thr2->Name = "Thread2";
thr1->Start();
thr2->Start();
int iHour = 0;
int iMin = 0;
int iSec = 1;
Thread::Sleep(TimeSpan(iHour, iMin, iSec));
}