Advertisement
Guest User

Untitled

a guest
Oct 24th, 2014
155
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.28 KB | None | 0 0
  1. // 3.cpp : Defines the entry point for the console application.
  2. //
  3.  
  4.  
  5.  
  6. #include "stdafx.h"
  7. #include <iostream>
  8. #include <windows.h>
  9. #include <stdio.h>
  10. using namespace std;
  11. int global = 12345; // глобальная переменная 1
  12.  
  13. int fun(int &b)
  14. {
  15. cout<<"-----------------------------"<<endl;
  16. cout<<"Добавлю 1000 "<<endl;
  17. b += 1000;
  18. cout<<"Покажу что произошло "<<global<<endl;
  19. cout<<"-----------------------------"<<endl;
  20. return 0;
  21.  
  22.  
  23.  
  24. }
  25.  
  26.  
  27.  
  28. DWORD WINAPI MyThread( LPVOID lpParam )
  29. {
  30. cout<<"Стартует поток номер два "<<endl;
  31. fun(::global);
  32. cout<<"Завершаю второй поток "<<endl;
  33. cout<<endl;
  34.  
  35. return 0;
  36. }
  37.  
  38. int _tmain(int argc, _TCHAR* argv[])
  39. {
  40. setlocale(LC_ALL,"Russian");
  41. cout<<"Глобальная переменная равна = "<<::global<<endl;
  42.  
  43. DWORD ThreadId;
  44. HANDLE hThread;
  45. hThread = CreateThread(
  46. NULL, // атрибуты безопасности по умолчанию
  47. 0, // размер стека по умолчанию
  48. MyThread , // указатель на процедуру создаваемого потока
  49. NULL, // аргумент, передаваемый функции потока
  50. 0, // флаги создания по умолчанию
  51. &ThreadId); // возвращаемый идентификатор потока
  52. if (hThread == NULL) cout<<("Не удалось создать поток" );
  53. ///////////////////////////////////////////////////////////////////////////
  54. //////////////////////////////////////////////////////////////////////////
  55.  
  56. SetThreadPriority(hThread, THREAD_PRIORITY_ABOVE_NORMAL);
  57. SuspendThread(hThread);
  58. ResumeThread(hThread);
  59.  
  60. cout<<"Начало первого потока "<<::global<<endl;
  61. int a = fun(::global);
  62. cout<<"Заканчивается работа первого потока "<<endl;
  63. getchar();
  64. CloseHandle( hThread );
  65.  
  66.  
  67. return 0;
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement