Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // project4.cpp : main project file.
- #include "stdafx.h"
- using namespace System;
- using namespace System::Threading;
- ref class PrintTasks
- {
- public: static bool runFlag = true;
- public:
- void PrintA(Object^ name) {
- while (runFlag) {
- Console::Write("{0}\n", "A");
- }
- }
- void PrintB(Object^ name) {
- while (runFlag) {
- Console::Write("{0}\n", "B");
- }
- }
- void PrintC(Object^ name) {
- while (runFlag) {
- Console::Write("{0}\n", "C");
- }
- }
- };
- int main(array<System::String ^> ^args)
- {
- PrintTasks ^tasks = gcnew PrintTasks();
- // First Method
- Thread ^thread1 = gcnew Thread ( gcnew ParameterizedThreadStart( tasks, &PrintTasks::PrintA ) );
- Thread ^thread2 = gcnew Thread ( gcnew ParameterizedThreadStart( tasks, &PrintTasks::PrintB ) );
- Thread ^thread3 = gcnew Thread ( gcnew ParameterizedThreadStart( tasks, &PrintTasks::PrintC ) );
- thread1->Start("printA");
- thread2->Start("printB");
- thread3->Start("printC");
- Thread::Sleep(50);
- PrintTasks::runFlag=false;
- thread3->Abort();
- thread2->Abort();
- thread1->Abort();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment