📄 cmppthread.c
字号:
/*************************************************************************** Copyright : 2001-2002, ASPIRE TECHNOLOGIES (SHENZHEN) LTD. Program : cmppthread.c Description : 线程函数实现文件 Version : 1.5+***************************************************************************/#include "os.h"#include "cmppthread.h"/************************************************************************ Function ID: nAPICreatThread Description: 创建线程函数 Input Param: Output Param: API_THREAD_HANDLE* phandle Return: int 0 success -1 fail*************************************************************************/int nAPICreatThread( API_THREAD_HANDLE* phandle, void* pVThreadName, void *arg){ #if defined(_HPUX_SOURCE) || defined(_LINUX_SOURCE) int nRet; /* 创建处理线程 */ nRet = pthread_create(phandle, NULL, pVThreadName, arg); if (nRet != 0) return THREAD_FAIL; else return THREAD_OK; #endif #ifdef WIN32 /* 创建处理线程 */ *phandle = CreateThread(NULL, 0, pVThreadName, arg, 0, NULL); if( *phandle != NULL) return THREAD_OK; else return THREAD_FAIL; #endif}/************************************************************************ Function ID: nAPIGetpthreadId Description: 得到当前线程的ID Input Param: Output Param: Return: int 线程ID *************************************************************************/int nAPIGetpthreadId(){ #if defined(_HPUX_SOURCE) || defined(_LINUX_SOURCE) return pthread_self(); #endif #ifdef WIN32 return GetCurrentThreadId(); #endif}/************************************************************************ Function ID: vAPIJointhread Description: 等待线程退出 Input Param: Output Param: Return: *************************************************************************/void vAPIJointhread(API_THREAD_HANDLE* phandle){ #if defined(_HPUX_SOURCE) || defined(_LINUX_SOURCE) // nAPICancelThread(phandle); //added by lijian 2003-12-4 修改重新init的等待问题 pthread_join(*phandle, NULL); #endif #ifdef WIN32 WaitForSingleObject( *phandle, INFINITE ); CloseHandle(*phandle); #endif}/************************************************************************ Function ID: nAPICreatThread Description: 销毁线程函数 Input Param: API_THREAD_HANDLE* phandle Output Param: Return: int 0 success -1 fail*************************************************************************/int nAPICancelThread( API_THREAD_HANDLE* phandle){ #if defined(_HPUX_SOURCE) || defined(_LINUX_SOURCE) int nRet; nRet = pthread_cancel(*phandle); if (nRet != 0) return THREAD_FAIL; else return THREAD_OK; #endif #ifdef WIN32 /* 创建处理线程 */ if( TerminateThread(*phandle, 0) != 0 ) return THREAD_OK; else return THREAD_FAIL; #endif}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -