Вопросы по теме 'waithandle'

Многопоточность сервера излишняя?
В настоящий момент я создаю приложение серверного типа, которое будет выполнять обычное прослушивание подключений от внешних клиентов и, когда они подключаются, обрабатывать запросы и т. Д. На данный момент моя реализация создает пару потоков...
165 просмотров

Как правильно ждать семафора?
Я думал, что следующий код позволит всем 10 потокам работать по два за раз, а затем вывести «готово» после того, как Release() будет вызван 10 раз. Но этого не произошло: int count = 0; Semaphore s = new Semaphore(2, 2);...
8881 просмотров
schedule 21.10.2021

Класс WaitHandle.WaitAny и семафора
Правка: я хотел бы сослаться на временное безумие даже из-за того, что задал этот вопрос, но в то время это имело смысл (см. редактирование 2 ниже). Для проекта .NET 3.5 у меня есть два типа ресурсов ( R1 и R2 ), доступность которых мне нужно...
7716 просмотров
schedule 07.03.2022

C # Async WebRequests: выполнение действия после выполнения всех запросов
У меня есть это базовое консольное приложение для парсинга на C #, которое асинхронно использует WebRequest для получения html из списка сайтов. Он работает нормально, но как мне настроить триггер, который срабатывает после обработки каждого сайта в...
1083 просмотров
schedule 29.04.2022

Можно ли использовать ManualResetEvent для замены логического
Это, по общему признанию, необычный вопрос; Я бы никогда не рекомендовал заменять логическое значение на ManualResetEvent при типичной разработке .NET. В этом случае мне уже нужен ManualResetEvent для индикации состояния подключения к другому...
371 просмотров
schedule 05.05.2022

Нужно ли мне вызывать Close () для ManualResetEvent?
Я читал о .NET Threading и работал над некоторым кодом, который использует ManualResetEvent . Я нашел множество примеров кода в Интернете. Однако при чтении документации для WaitHandle я увидел следующее: WaitHandle реализует шаблон...
10311 просмотров

Мой EventWaitHandle говорит, что доступ к пути запрещен, но это не так.
Краткое резюме того, что я теперь знаю У меня есть EventWaitHandle , который я создал, а затем закрыл. Когда я пытаюсь воссоздать его с помощью этого ctor возникает исключение "Доступ к пути... запрещен". Это исключение встречается редко, в...
6309 просмотров

Надежный метод отслеживания отказавших рабочих с помощью ThreadPool.
Я ищу хороший метод отслеживания (подсчета), какие работники потерпели неудачу при постановке в очередь с помощью Threadpool и использовании WaitHandle.WaitAll() для завершения всех потоков. Является ли блокировка счетчика хорошей техникой или есть...
284 просмотров
schedule 20.06.2023

Как правильно распоряжаться дескриптором ожидания
Я использую многопоточность и использую AutoResetEvents, а ManualResetEvents управляют моим основным циклом. При «уничтожении» потоков я также должен избавиться от этих сигналов, это ясно. Но я видел разные способы избавления от Waithandles, и я...
2647 просмотров
schedule 26.11.2022

Есть ли метод WaitOne, который сначала вызывает Reset?
Я использую AutoResetEvent, где для события можно сделать несколько вызовов Set (обработка исключений). Бывают случаи, когда вызывается дополнительный набор, поэтому, когда код делает второй вызов события WaitOne, он просто проходит через него,...
4232 просмотров
schedule 17.09.2023

Многопоточность: WaitAll не ждет, как ожидалось
У меня есть поток, который вызывает два отдельных потока для выполнения некоторой работы. Всякий раз, когда какое-либо из заданий завершено, вызывается Waithandle.Set(0, и в конце родительского рабочего потока я хотел, чтобы WaitAll для обоих были...
571 просмотров
schedule 16.04.2023

Поток сохраняется после завершения приложения из-за сигнала AutoResetEvent в состоянии WaitOne
У меня есть приложение, которое использует AutoResetEvent (WaitOne/Set) в очереди для обработки сообщений. Я заметил, что когда я завершаю сеанс отладки из Visual Studio (Shift+F5), исходный процесс для приложения зависает (но не всегда). Я вручную...
1919 просмотров
schedule 25.12.2022

Лучший подход к тайм-ауту с использованием HttpWebRequest.BeginGetResponse
HttpWebRequest.BeginGetResponse не учитывает свойства времени ожидания из HttpWebRequest (Timeout или ReadWriteTimeout). Я прочитал некоторые подходы, чтобы получить те же результаты, но я не знаю, лучший ли это способ сделать это, и следует ли мне...
8091 просмотров

Как я могу использовать WaitHandle в ожидании завершения асинхронного вызова?
Рассмотрим этот код: class Program { static void Main(string[] args) { Master master = new Master(); master.Execute(); } } class TestClass {...
3346 просмотров

Использование WaitHandle.WaitOne
Я пытаюсь создать службу Windows, которая каждые 5 минут опрашивает систему и проверяет наличие необходимых действий. Я прочитал WaitHandles и их полезность в этой области, но мне нужно понять, как это работает. См. Код ниже: public partial...
3908 просмотров

Как предотвратить это исключение: значение не попадает в ожидаемый диапазон. с методом WaitHandle.WaitAny?
Исключение в QueueCompareProcessThread() Сообщение: Значение не попадает в ожидаемый диапазон. Трассировка: в System.Threading.WaitHandle.WaitMultiple(WaitHandle[] waitHandles, Int32 миллисекундыTimeout, логическое значение exitContext,...
287 просмотров
schedule 27.12.2022

Когда ManualResetEvent.Set() может вернуть false?
Согласно документации MSDN, Set() и Reset() для ManualResetEvent (или любого EventWaitHandle) возвращают логический индикатор того, была ли операция успешной. При каких обстоятельствах этот вызов может вернуть false и что мне делать, если это...
1733 просмотров
schedule 25.11.2023

Почему WaitForSingleObject пропустит сигнал?
Похоже, что иногда WaitForSingleObject будет ждать тайм-аута, даже если о событии было сообщено. Сигнальный поток каждый раз получает успех от SetEvent() . Однако сигнализируемый поток не всегда будет слышать сигнал. Если я добавлю избыточный...
3780 просмотров