@TemaKam

Программа «Python» не работает. Возникшая проблема привела к прекращению работы программы. Краш ntdll.dll. Куда копать?

при работе программы иногда возникает ошибка
7vO66Fu.jpg
ну и соответственно вылетает после
после перезапуска на тех же исходных данных уже нормально отрабатывает
и возникает при совершенно разных условиях, в любой момент какой-то

вот вообще не пойму, с чего хоть копать начать? где ловить и что ловить?
с чем вообще может быть это связано?

из основного используются потоки, но максимум 200шт одновременно, и функции потоков точно всегда завершаются
прокси также используются, запросы к ВК и работа с интерфейсом PyQt5, а именно QTableWidget заполняется постепенно
еще используется подмена доменов в файле hosts, чтобы капчу не через рукапчу решать, а через ксевил
соответственно в питоне при запросах стоит verify=False
программа работает на дедике

логи винды во вкладке приложение

скрины
tNW3X7Y.jpg
L2vvmJx.jpg
bKF70yE.jpg
naxkyzn.jpg

spoiler
Имя сбойного приложения: python.exe, версия: 3.8.5150.1013, метка времени: 0x5f15bf71
Имя сбойного модуля: ntdll.dll, версия: 10.0.14393.0, метка времени: 0x578997b2
Код исключения: 0xc0000374
Смещение ошибки: 0x00000000000f73e3
Идентификатор сбойного процесса: 0x19fc
Время запуска сбойного приложения: 0x01d731f991670fa5
Путь сбойного приложения: C:\Users\Administrator\AppData\Local\Programs\Python\Python38\python.exe
Путь сбойного модуля: C:\Windows\SYSTEM32\ntdll.dll
Идентификатор отчета: 17a8f183-86af-4c04-b581-62e1129dc13c
Полное имя сбойного пакета: 
Код приложения, связанного со сбойным пакетом:

spoiler
- System 

  - Provider 

   [ Name]  Application Error 
 
  - EventID 1000 

   [ Qualifiers]  0 
 
   Level 2 
 
   Task 100 
 
   Keywords 0x80000000000000 
 
  - TimeCreated 

   [ SystemTime]  2021-04-15T13:48:42.6371652Z 
 
   EventRecordID 41927 
 
   Channel Application 
 
   Computer xxx1 
 
   Security 
 

- EventData 

   python.exe 
   3.8.5150.1013 
   5f15bf71 
   ntdll.dll 
   10.0.14393.0 
   578997b2 
   c0000374 
   00000000000f73e3 
   19fc 
   01d731f991670fa5 
   C:\Users\Administrator\AppData\Local\Programs\Python\Python38\python.exe 
   C:\Windows\SYSTEM32\ntdll.dll 
   17a8f183-86af-4c04-b581-62e1129dc13c

spoiler
- <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
- <System>
  <Provider Name="Application Error" /> 
  <EventID Qualifiers="0">1000</EventID> 
  <Level>2</Level> 
  <Task>100</Task> 
  <Keywords>0x80000000000000</Keywords> 
  <TimeCreated SystemTime="2021-04-15T13:48:42.6371652Z" /> 
  <EventRecordID>41927</EventRecordID> 
  <Channel>Application</Channel> 
  <Computer>xxx1</Computer> 
  <Security /> 
  </System>
- <EventData>
  <Data>python.exe</Data> 
  <Data>3.8.5150.1013</Data> 
  <Data>5f15bf71</Data> 
  <Data>ntdll.dll</Data> 
  <Data>10.0.14393.0</Data> 
  <Data>578997b2</Data> 
  <Data>c0000374</Data> 
  <Data>00000000000f73e3</Data> 
  <Data>19fc</Data> 
  <Data>01d731f991670fa5</Data> 
  <Data>C:\Users\Administrator\AppData\Local\Programs\Python\Python38\python.exe</Data> 
  <Data>C:\Windows\SYSTEM32\ntdll.dll</Data> 
  <Data>17a8f183-86af-4c04-b581-62e1129dc13c</Data> 
  <Data /> 
  <Data /> 
  </EventData>
  </Event>
  • Вопрос задан
  • 163 просмотра
Пригласить эксперта
Ответы на вопрос 3
dimonchik2013
@dimonchik2013
совет, который уже дан - ничего не стоит
ну вообще в логи винлдоус

чисто умозрительно - вот те 200 потоков, провайдеры не очень любят такое число одновременных (как ни странно, их столько и не бывает, если без торрентов) , они могут виснуть и винда убивает источник проблемы

или без прова - виснут на мертвых прокси

вручную без логов начни с 20-50-100 и смотри на реакцию
Ответ написан
sergey-gornostaev
@sergey-gornostaev Куратор тега Python
Седой и строгий
используются потоки

работа с интерфейсом PyQt5

Ставлю на это. Вы же в курсе, что библиотеки графического интерфейса, включая Qt, не являются потокобезопасными?
Ответ написан
trapwalker
@trapwalker Куратор тега Python
Программист, энтузиаст
Избавляйтеь от винды и от QT. У вас там через GUI с чем-то взаимодействвать надо? Стройте процесс так, чтобы всё было максимально просто. Если куда-то ходите через браузер, есть Selenium для этого.
Делайте всё headless, делайте стабильной простой и предсказуемой OS (linux).
Максимально упрощайте код, избавляйтесь от лишних зависимостей, тем более бинарных. Чем меньше у вас таких вот внешних черных ящиков, тем лучше.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы