📄 singlethreadblocking.h
字号:
#ifndef __GradSoft_ThreadServices_SingleThreadBlocking_h#define __GradSoft_ThreadServices_SingleThreadBlocking_h/* * part of GradSoft C++ ToolBox. * (C) GradSoft 2000, 2001 * http://www.gradsoft.com.ua * $Id: SingleThreadBlocking.h,v 1.6 2001/10/31 03:13:48 rssh Exp $ */#ifndef __GradSoft_ThreadService_h#include <GradSoft/ThreadService.h>#endif#ifndef __GradSoft_Thread_h#include <GradSoft/Thread.h>#endifnamespace GradSoft {/** * SingleThreadBlocking ThreadService. * (i. e. this is 'non-thread' ThreadService: each message is * processed in the same thread as caller, without * any dispatching. **/class SingleThreadBlocking: public ThreadService{private: Runnable* current_; Thread::id_type threadId_;public: SingleThreadBlocking() :current_(NULL), threadId_(Thread::current_id()) {} ~SingleThreadBlocking() { if (current_ != NULL) { if (threadId_ == Thread::current_id()){ delete[] current_; }else{ // else it now evaluated, don't warry about this. } } } /// void process(Runnable* runnable);};}#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -