コード例 #1
0
ファイル: ThreadHolder.cs プロジェクト: kirkenskorshaer/crm
        public void StopThread()
        {
            DatabaseOptionBase.UnAssignWorkerFromAllAssigned(DatabaseWorker, _mongoConnection);

            DatabaseWorker.Delete(_mongoConnection);

            DatabaseWorker = null;
        }
コード例 #2
0
        private void UnassignFromDeadWorkers()
        {
            if (_lastCheckForDeadWorkers + _timeToWaitBetweenChecksForDeadWorkers > Clock.Now)
            {
                return;
            }

            List <DatabaseWorker> deadWorkers = GetDeadWorkers();

            deadWorkers.ForEach(worker => DatabaseOptionBase.UnAssignWorkerFromAllAssigned(worker, _connection));

            _optionStatus.RemoveOptionsFromDeadWorkers(deadWorkers);

            _lastCheckForDeadWorkers = Clock.Now;
        }