Няшная / Говнокод #24681 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
Ну и полный пример:

#include "stdafx.h"
#include "windows.h"
#include "iostream.h"
#include "process.h"			// специально для потока

void  fThredFunct1(void* pv);		// декларация функции потока
__declspec(thread) DWORD dwTlsIndex;		// локальная статическая функция для потока

void main()
{

	ULONG hThread1 = 0;		// Идентификатор потока 1
	ULONG hThread2 = 0;		// Идентификатор потока 2
	//unsigned long _beginthread( void( __cdecl *start_address )( void * ),
	//			unsigned stack_size, void *arglist );
	hThread1 = _beginthread(fThredFunct1,0,NULL);	// создали первый поток
	if (hThread1==-1)
		cout << "Error create thread" << endl; 
	hThread2 = _beginthread(fThredFunct1,0,NULL);	// создали второй поток
	if (hThread1==-2)
		cout << "Error create thread" << endl; 
	Sleep(2000);				// ждем 
}

void fThredFunct1(void* pv)			// реализация функции потока
{
	dwTlsIndex=TlsAlloc();		// Запросить индекс
	if (dwTlsIndex==-1)		// проверить на ошибку
	{
		cout << "Error TlsAlloc " << endl;
		return;
	}
	cout << dwTlsIndex << endl;
	Sleep(1000);

	if ( TlsFree( dwTlsIndex)==0 )	// освободить индекс
	{
		cout << "Error TlsFree" << endl;
		return;
	}
}

Многопоточное говно
Гуглояндексится.

Запостил: kir_rik kir_rik, (Updated )

Комментарии (30) RSS

Добавить комментарий

Из-за тебя ушел bormand, guest!

    А не использовать ли нам bbcode?


    8