code: def start(self):
  		
  
  		start_event = self.start_event()
  		stop_event = self.stop_event()
  		ready_event = self.ready_event()
  
  		def thread_target():
  			try:
  				start_event.set()
  				self.thread_started()
  				if ready_event is not None:
  					ready_event.set()
  			except Exception as e:
  				self.exception_event().set()
  				self.thread_exception(e)
  
  		if self.__thread is None:
  			if stop_event is not None:
  				stop_event.clear()
  
  			if ready_event is not None:
  				ready_event.clear()
  
  			self.exception_event().clear()
  
  			self.__thread = Thread(target=thread_target, name=self.thread_name())
  			self.__thread.start()
docs: :meth:`WStoppableTask.start` implementation that creates new thread