public TTeamlabServiceTaskResult Start() { TTeamlabServiceTaskResult result = Stop(); if ((TTeamlabServiceTaskResult.STR_FINISHED_OK != result) && (TTeamlabServiceTaskResult.STR_IDLE != result)) { return(result); } try { mThread.Start(this); } catch (Exception ex) { result = TTeamlabServiceTaskResult.STR_UNKNOWN_ERROR; if (null != mLogger) { mLogger.LogError(this.ToString() + ": " + ex.Message); } } result = (mThread.ThreadState == ThreadState.Running) ? TTeamlabServiceTaskResult.STR_RUNNED : TTeamlabServiceTaskResult.STR_UNKNOWN_ERROR; Result = result; return(result); }
public TTeamlabServiceTaskResult Stop() { TTeamlabServiceTaskResult result = Result; if (ThreadState.Running == mThread.ThreadState) { mThread.Abort(); Result = result = TTeamlabServiceTaskResult.STR_CANCELLED; } return(result); }