Исправление: Когда приложение на базе .NET Framework использует класс System.Threading.Timer, события таймера могут не получить сигнал в .NET Framework 1.1 SP1

Переводы статьи Переводы статьи
Код статьи: 900822 - Vizualiza?i produsele pentru care se aplic? acest articol.
Развернуть все | Свернуть все

Проблема

Если управляемое приложение Microsoft .NET Framework используетSystem.Threading.Timerкласс в Microsoft .NET Framework 1.1 пакета обновления 1 (SP1), событие таймера не может получить сигнал. Как правило Данная проблема возникает, если компьютер, на котором выполняется приложение в условиях интенсивной нагрузки или если выполняется несколько объектов таймера.

Решение

Сведения об исправлении



Вам доступно исправление от корпорации Майкрософт.. Это исправление предназначено для устранения проблемы, описанной в этой статье.. Его необходимо применять только в тех системах, в которых наблюдается данная проблема.. Исправление может проходить дополнительное тестирование.. Таким образом эта проблема не является постоянной для вас, мы рекомендуем дождаться следующего автоматического обновления программного обеспечения, содержащего это исправление..

Загрузить это исправление из коллекции кода MSDN можно на следующем веб-сайте корпорации Майкрософт::
http://Code.MSDN.Microsoft.com/KB900822

Примечание.Коллекции кода MSDN отображаются языки, для которых доступно исправление. Если нужный язык не отображается, значит страница коллекции кода для этого языка отсутствует..

Примечание.Другие проблемы или если требуется устранить неполадки, возможно, потребуется создать отдельный запрос. Дополнительные услуги по технической поддержке, не связанные с данным исправлением, оплачиваются вами дополнительно.. Полный список телефонов поддержки и обслуживания клиентов Microsoft или информацию по созданию отдельного запроса на обслуживание вы можете найти на веб-сайте Майкрософт::
http://support.microsoft.com/contactus/?ws=support

Предвартельные требования

Microsoft .NET framework 1.1 с пакетом обновления 1

Необходимость перезагрузки

После установки этого обновления перезагружать компьютер не требуется..

Сведения о замене обновления программного обеспечения

Данное обновление не заменяет других обновлений программного обеспечения.

СВЕДЕНИЯ О ФАЙЛАХ

Английская версия данного обновления содержит версии файлов, приведенные в следующей таблице, или более поздние.. Дата и время для файлов указаны во всеобщем скоординированном времени (UTC).. При просмотре сведений о файле, время изменяется на местное.. Чтобы узнать разницу между временем по Гринвичу и местным временем,Часовой поясвкладки в окне «Дата и время» панели управления.
   Date         Time   Version        Size       File name
   ----------------------------------------------------------
   09-Jun-2005  05:46  1.1.4322.2331  2,138,112  Mscorlib.dll
   09-Jun-2005  05:48                    10,908  Mscorlib.ldo
   09-Jun-2005  05:56  1.1.4322.2331  2,519,040  Mscorsvr.dll
   09-Jun-2005  05:57  1.1.4322.2331  2,506,752  Mscorwks.dll

Статус

Корпорация Майкрософт подтверждает, что это проблема в продуктах Майкрософт, перечисленных в разделе «Применяется к»..

Дополнительная информация

надписьюТаймерклассы реализованы в виде связанного списка объектов таймера. При первомSystem.Threading.Timerсоздать объект, диспетчер потоков пула запускает поток для обработки связанного списка. Каждый объект timer добавляется связанного списка. Поток обработки связанного списка циклически связанного списка и определяет, когда ожидается событие таймера сигналы от текущего количества часов.

Если истек срок действия объекта таймера, поток асинхронно очереди функцию обратного вызова перед поток должен получить сигнал событие таймера времени. После обработки всех объектов таймера в связанном списке поток поток обновляет время последней обработки связанного списка. Затем поток вычисляет минимальный интервал, поток должен ждущий режим перед поток reprocesses связанного списка, для следующего времени объекта таймера.

В некоторых случаях когда система находится в разделе подчеркните или если связанный список содержит несколько объектов таймера, поток обработки может быть pre-empted, поток с более высоким приоритетом, прежде чем весь связанный список был обработан. При этом событие таймера далее должен получить сигнал время вычисляется быть раньше, чем отметка времени, после обработки связанного списка. Таким образом время, которое должен получить сигнал событие таймера в прошлом и никогда не истекает.

Because the time that the timer event is expected to be signaled has already passed, the thread may calculate a negative period to wait before the timer event must be signaled. When the thread has a negative period to wait, the thread enters a sleep state for a long time.
Для получения дополнительных сведений обратитесь к следующей статье Базы Знаний Майкрософт::
824684Стандартные термины, используемые при описании обновлений программных продуктов Майкрософт
Примечание. Это ЭКСПРЕСС-ПУБЛИКАЦИЯ, подготовленная непосредственно службой технической поддержки Майкрософт . Сведения, содержащиеся в данном документе, предоставлены в качестве отклика на возникшие проблемы. Из-за срочности в материалах могут быть опечатки, и в любое время и без уведомления в них могут быть внесены изменения. Чтобы получить дополнительные сведения, см. Условия использования.

Свойства

Код статьи: 900822 - Последний отзыв: 27 ноября 2010 г. - Revision: 2.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft .NET Framework 1.1 Service Pack 1
Ключевые слова: 
kbwinserv2003sp2fix kbfix kbbug kbqfe kbmt KB900822 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.
Эта статья на английском языке:900822

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com