• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Как узнать количество сообщений в очереди Windows

  • Автор темы itten
  • Дата начала
Статус
Закрыто для дальнейших ответов.
I

itten

Здравствуйте
Как можно _быстро_ определить количество сообщений в очереди Windows с использованием C# and .NET?
Сейчас я делаю так:
SomeQueue.GetAllMessages().Length;
Работает, но для больших очередей недостаточно быстро
 
M

mms

GetAllMessages returns a static snapshot of the messages in the queue, not dynamic links to those messages. Therefore, you cannot use the array to modify the messages in the queue. If you want real-time, dynamic interaction with the queue (such as the ability to delete messages), call the GetMessageEnumerator method, which returns a dynamic list of the messages in the queue.

О чем это говорит, а том, что GetAllMessages возвращает клонированный массив, а GetMessageEnumerator работает с массивом самой очереди. Но надо учитывать и в одном и в другом случае, что пока вы с этими массивами работаете очередь может 10 раз измениться :)
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!