⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 os_thread.h

📁 linux下的多个网络通讯的例子 可多参考下
💻 H
字号:
#ifndef __OS_THREAD_H__#define __OS_THREAD_H__#ifdef __cplusplusextern "C" {#endif#if (__OS_TYPE__ == __OS_WIN32__) /* Windows 线程版本 */ #include <windows.h>  typedef  unsigned long OS_THREAD_ID; typedef  HANDLE OS_THREAD_T;  //typedef void * (*OS_THREAD_FUNC)(void *);typedef  LPTHREAD_START_ROUTINE OS_THREAD_FUNC;       #define OS_ThreadCreate(pth,fn,arg)  (((*pth =CreateThread(NULL,0,(OS_THREAD_FUNC)fn,arg,0,NULL))==NULL)?OS_ERROR:OS_OK)       #define OS_ThreadExit() ExitThread(0)	#define OS_ThreadSetPriority(th,pri) SetThreadPriority(th,pri)	#define OS_ThreadStart(th)  ((0xFFFFFFFF==ResumeThread(th))?OS_ERROR : OS_OK)	#define OS_ThreadStop(th) ((0xFFFFFFFF == SuspendThread(th))? OS_ERROR : OS_OK)	#define OS_ThreadYield() Sleep(0)  	#define OS_ThreadGetCurId() GetCurrentThreadId() #elif (__OS_TYPE__ == __OS_LINUX__)  /* Linux Pthread 版本*/	#include <pthread.h>	 typedef  int OS_THREAD_ID;	typedef pthread_t OS_THREAD_T;		typedef void * (*OS_THREAD_FUNC)(void *);		#define OS_ThreadCreate(pth,fn,arg) ((pthread_create(pth, NULL, (OS_THREAD_FUNC  ) fn, arg) == -1)?OS_ERROR:OS_OK)	#define OS_ThreadExit() pthread_exit(NULL)	#define OS_ThreadSetPriority() 	#define OS_ThreadStart()	#define OS_ThreadStop()	#define OS_ThreadYield do{ if (0 != sched_yield()) sched_yield();}while(0)	#define OS_ThreadGetCurId() getpid()#else  #error unknow thread define !  #endif#ifdef __cplusplus}#endif#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -