Xin hãy giúp tôi làm rõ các khái niệm về hai báo cáo python về sự khác biệt trong chức năng:chênh lệch giữa (0) sys.exit và os._exit là gì (0)
sys.exit(0)
os._exit(0)
Xin hãy giúp tôi làm rõ các khái niệm về hai báo cáo python về sự khác biệt trong chức năng:chênh lệch giữa (0) sys.exit và os._exit là gì (0)
sys.exit(0)
os._exit(0)
Theo documentation:
os._exit():
Thoát quá trình với tình trạng n, mà không gọi xử lý dọn dẹp, đỏ bừng bộ đệm stdio vv
Note Cách thông thường để thoát khỏi là
sys.exit(n)
._exit()
thường chỉ nên được sử dụng trong quy trình con saufork()
.
Trong chương trình của tôi tôi bắt đầu nhiều chủ đề, những gì tôi muốn là khi bao giờ có một ngoại lệ trong bất kỳ chủ đề toàn bộ chương trình nên chấm dứt. Tôi sử dụng sys.exit (1) ngoại trừ thread nhưng điều này chỉ thoát ra từ thread đơn không từ chương trình. Vì vậy, tôi sử dụng os_exit (1) là phương pháp này tốt? –
@AamirAdnan: Xem http://stackoverflow.com/questions/905189/why-does-sys-exit-not-exit-when-called-inside-a-thread-in-python – NPE
cảm ơn rất nhiều .. aix –
os._exit
gọi C chức năng _exit()
mà không ngay lập tức một chấm dứt chương trình . Lưu ý tuyên bố "không bao giờ có thể trở lại".
sys.exit()
giống hệt với raise SystemExit()
. Nó làm tăng một ngoại lệ Python có thể bị người gọi bắt.
Bài đăng gốc: http://bytes.com/topic/python/answers/156121-os-_exit-vs-sys-exit
Bạn đã tra cứu tài liệu chưa? – jdi