singlethreadblocking.h

来自「遗传算法的一个库」· C头文件 代码 · 共 61 行

H
61
字号
#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 + =
减小字号Ctrl + -
显示快捷键?