検索

ホームページ  >  に質問  >  本文

Python - プログラムが長時間実行された後にオペレーティング システムによって一時停止される状況を解決するにはどうすればよいですか?

継続的に実行する必要がある Python クローラー プログラムがいくつかありますが、2 日間実行すると毎回応答しなくなります。そのたびに、time.sleep(60) でブロックされますが、プロセスは再び続行されます。死んではいません。コンソールで Ctrl C を押してもプログラムを終了できず、タスク マネージャーでのみ強制終了できます。

その理由は何ですか?そしてこの問題をどうやって解決するのでしょうか?

先輩方、よろしくお願いします!

扔个三星炸死你扔个三星炸死你2767日前1104

全員に返信(2)返信します

  • 巴扎黑

    巴扎黑2017-06-12 09:24:55

    問題分析の提案:

    linux: 可以尝试通过strace命令追踪进程状态, 根据输出的内容做分析,或者通过proc对应目录的文件对进程的各项指标做分析! Ctrl-C無効です。プロセスが中断不可能なスリープに入っている可能性があります。詳細を知るには、取得された実際のデータを確認する必要があります。

    : タスクマネージャーで該当するプロセスを見つけ、右クリック -> ダンプファイルを作成し、ダンプファイルを分析して原因を特定できるかどうかを確認します。windows

    : クロールの進行状況の詳細なログを記録し、リンクや例外が発生した場合は、次回クロールが停止したときの具体的な停止時間と進行状況を把握できるようにすることが最善です。まずこの進捗状況を確認してから、徹底的に分析します。爬虫程序

    返事
    0
  • PHP中文网

    PHP中文网2017-06-12 09:24:55

    Linux システムの場合は、crontab を使用してスケジュールされたタスクを実行してみてください
    Windows の場合は、タスク スケジューラを使用してください

    返事
    0
  • キャンセル返事