C++/CLR 中的多线程使用方法
本文由Monkey Man 撰写于 2015/7/10 0:41:33
在编写大型程序时,将所有任务都放在一条线程上来完成并不是一个明智的选择,因为程序一旦卡死在某个环节或是发生了死循环,整个程序都会废掉。所以适当的用多线程有利于程序的良好运行。
在C++/CLR中使用多线程是很方便的,以下介绍使用方法:
添加命名空间:
using namespace System::Threading;
创建新的线程:
Thread ^ oThread = gcnew Thread( gcnew ThreadStart( this, &data::df ));
启动新的线程:
oThread->Start();
关闭新的线程:
oThread->Abort();
在调用此方法的线程上引发 ThreadAbortException,以开始终止此线程的过程。 调用此方法通常会终止线程。挂起线程:
Thread::Sleep( n);
n代表需要挂起的时间,单位为毫秒。哪个线程调用这个方法,哪个线程就挂起 n 毫秒。This: 指当前的窗口句柄或指针。
&data::df: 你要在新进程里完成的任务。df 是data类中的一个函数。
一个例子:
// [C++]
//我用的编译环境是VS2010
//使用/clr选项编译.
using namespace System;
using namesp