los.cpp

来自「功能强大的网络蜘蛛软件」· C++ 代码 · 共 67 行

CPP
67
字号
#include "Los.h"os::os()
{

}

os::~os()
{

}
void os::InitialMutex(MUTEX_TYPEDEF *mutex_variable)
{
	pthread_mutex_init(mutex_variable,NULL);
}
int os::Create_Thread(THREAD_HANDLE *phandle, void*(* thread_function)(void *), thread_param_pointer plparamThread)
{	int ret=0;	void *(*pFunc)(void *) = NULL;	pFunc = thread_function;
	ret=pthread_create(phandle, NULL, pFunc, plparamThread);
	if(ret)
	{
		return 1;
	}
	return 0;
}
int os::InitialEvent(EVENT_HANDLE *phandle, string event_name)
{
	pthread_cond_init(phandle, NULL);
	return 0;
}

void os::SignalOne(EVENT_HANDLE *phandle, MUTEX_TYPEDEF *mutex)
{
}

void os::WaitSignal(EVENT_HANDLE *phandle, MUTEX_TYPEDEF *mutex)
{	os::EnterMutex(mutex);
	pthread_cond_wait( (EVENT_HANDLE *)phandle, mutex);	os::LeaveMutex(mutex);
}

void os::SignalSpread(EVENT_HANDLE *phandle, MUTEX_TYPEDEF *mutex)
{	os::EnterMutex(mutex);
	pthread_cond_broadcast((EVENT_HANDLE *)phandle);	os::LeaveMutex(mutex);
}

void os::EnterMutex(MUTEX_TYPEDEF *mutex_variable)
{
	pthread_mutex_lock((MUTEX_TYPEDEF *)mutex_variable);
}

void os::LeaveMutex(MUTEX_TYPEDEF *mutex_variable)
{
	pthread_mutex_unlock((MUTEX_TYPEDEF *)mutex_variable);
}
void os::sleep(int seconds){	sleep(seconds);}

⌨️ 快捷键说明

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