Я использую этот код VB.NET для преобразования файлов WAV в mp3. Обычно он работает около 20 раз в час. Случайно, примерно раз в день, пул приложений зависает на objMP3 = CreateObject("AudioConverter.AudioConverterx")
. Перезапуск пула приложений исправляет это.
'convert the file
objMP3 = CreateObject("AudioConverter.AudioConverterx")
objMP3.Logfile = myLogFileName
objMP3.Convert(myWAVfile, myMP3file, "-cMP3")
objMP3 = Nothing
Каждый раз, когда это происходит, в журнале событий появляется такая ошибка:
Неисправное приложение w3wp.exe, версия 6.0.3790.3959, штамп 45d6968e,
неисправный модуль audioconverter.dll, версия 0.0.0.0, штамп 2a425e19,
отладки? 0, адрес ошибки 0x0000402e.
И системный журнал имеет это:
Процесс, обслуживающий пул приложений "tts.servername.com", превысил время
ограничения при выключении. Идентификатор процесса был 1340.
Единственное, о чем я могу думать, это то, что приложение не закрывается должным образом. Я читал, что objMP3 = Nothing
на самом деле не закрывает его (или не работает так же, как в классическом vb).
Я также настроил Диагностику отладки на сервере. Когда происходит зависание, создается большой файл (> 8 ГБ) с этой строкой несколько раз в секунду.
[08.11.2011 21:28:36] Исключение первого шанса - 0xc0000005, вызванное
поток с идентификатором системы: 2548
Есть идеи?