private bool CancelInternal(bool joinLoadingThread, int milisecondsTimeout)
{
if (_isRuning && _runningTag >= 0)
{
ApiCommand cancellCommand = new ApiCommand(_connection, "/cancel", new ApiCommandParameter(TikSpecialProperties.Tag, _runningTag.ToString())); //REMARKS: =tag=1234 and not =.tag=1234
cancellCommand.ExecuteNonQuery();
if (joinLoadingThread)
{
Thread loadingThread = _asyncLoadingThread;
if (loadingThread != null)
{
if (milisecondsTimeout > 0)
return loadingThread.Join(milisecondsTimeout);
else
{
loadingThread.Join();
return true;
}
}
}
}
return true;
}