public void Wakeup() { TaskRunner taskRunner = this.taskRunner; lock(messageQueue.SyncRoot) { if(this.taskRunner == null) { this.taskRunner = new DedicatedTaskRunner(this); } taskRunner = this.taskRunner; } taskRunner.Wakeup(); }