📄 thread.cc
字号:
/* $Id: Thread.cc,v 1.5 2000/09/24 12:57:54 pure Exp $ */#include "Thread.h"#include <unistd.h>void* Thread::kickoff(void* obj) { Thread* thread = (Thread*)obj; thread->sem.wait(); thread->action(); pthread_detach(thread->thread); return obj;}Thread::Thread(){ if (pthread_create(&thread, NULL, kickoff, this)) throw; pthread_setcanceltype(PTHREAD_CANCEL_ASYNCHRONOUS, NULL);} Thread::~Thread(){ cancel(); join();} void Thread::join(){ pthread_join(thread, NULL);} void Thread::cancel(){ pthread_cancel(thread);}void Thread::arise(){ sem.signal();}void Thread::yield(){ usleep(1);}Thread::operator pthread_t* (){ return &thread;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -