Tôi đã xây dựng một vài ứng dụng Flask, nhưng trên dự án mới nhất của tôi, tôi nhận thấy một điều gì đó hơi lạ trong chế độ phát triển. Dòng thứ hai của thông điệp bình thường trong các thiết bị đầu cuối mà luôn luôn đọc:Ứng dụng Flask "Khởi động lại với stat"
* Running on http://127.0.0.1:5000/
* Restarting with reloader
đã được thay thế bởi:
* Restarting with stat
Tôi không nghĩ rằng tôi đã thực hiện bất cứ điều gì khác nhau, trên thực tế, tôi bắt đầu bằng cách nhân bản một dự án starter-kit mà tôi đã sử dụng nhiều lần, chính nó, không hiển thị hành vi này. Tôi cũng nhận thấy rằng dự án này tiêu thụ khoảng 15% CPU một cách đều đặn, trong khi dự án khác của tôi hầu như không phải là một blip.
Bất kỳ ý tưởng nào tại sao điều này đang xảy ra?
Tôi có thể xác nhận rằng a) thay đổi hành vi có vẻ là kết quả của thay đổi trong phiên bản Werkzeug. b) rằng việc sử dụng tài nguyên được nâng cao dường như được liên kết với trình nạp lại - thiết lập debug = False thay đổi hành vi. và c) việc cài đặt cơ quan giám sát sẽ giảm yêu cầu tài nguyên hệ thống. Tôi cũng lưu ý rằng việc chạy một ứng dụng trong chế độ dev giờ đây dẫn đến hai trình thông dịch python chạy so với trước đây khi chỉ có một trình chạy. Ngoài ra: với cơ quan giám sát được cài đặt, thông báo sẽ là: 'Khởi động lại với fsevents reloader' – domoarrigato
Trên thực tế, thông báo sẽ thay đổi dựa trên hệ điều hành của bạn, cơ quan giám sát là thông minh về điều đó. Trên Linux, thông báo có thể là "khởi động lại với trình tải lại inotify". – davidism
Cảm ơn bạn đã đặt câu hỏi này. Trong trường hợp của tôi, tải lại * không hoạt động chút nào * cho đến khi tôi cài đặt cơ quan giám sát. – g33kz0r