windows中的多线程处理

(一)建立新线程的函数

1.Win32 API函数 CreateThread

HANDLE WINAPI CreateThread(
  __in_opt   LPSECURITY_ATTRIBUTES lpThreadAttributes,
  __in       SIZE_T dwStackSize,
  __in       LPTHREAD_START_ROUTINE lpStartAddress,
  __in_opt   LPVOID lpParameter,
  __in       DWORD dwCreationFlags,
  __out_opt  LPDWORD lpThreadId
);

2.也可以用C运行库的函数 _beginthread 来创建新线程

uintptr_t _beginthread( 
   void( *start_address )( void * ),
   unsigned stack_size,
   void *arglist 
);

(二)线程间通讯方法:

1.消息通讯 可以在线程中用SendMessage发送自定义消息到指定窗口

LRESULT WINAPI SendMessage(
  __in  HWND hWnd,
  __in  UINT Msg,
  __in  WPARAM wParam,
  __in  LPARAM lParam
);

2.创建线程时可以传递一个结构体的指针 3.利用全局变量来通讯

THE END