Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Melaksanakan Perintah Luaran Secara Asynchronous dalam Python?
Melaksanakan Perintah Luaran Secara Asynchronous daripada Python
Melaksanakan arahan luaran secara tak segerak ialah keperluan biasa dalam senario skrip. Dalam Python, ini boleh dicapai melalui pelbagai pendekatan.
Satu pilihan ialah menggunakan os.system, yang membenarkan menjalankan arahan tanpa menyekat dengan menambahkan ampersand (&) pada penghujungnya. Walau bagaimanapun, kaedah ini dianggap tidak digunakan dan tidak disyorkan kerana potensi isu dengan interaksi shell.
Pendekatan yang lebih optimum ialah menggunakan subproses.Popen, yang menyediakan API yang lebih komprehensif dan mantap untuk mengurus proses luaran. Dengan Popen, arahan boleh dilancarkan secara tidak segerak, membenarkan skrip Python meneruskan pelaksanaan sementara arahan luaran berjalan di latar belakang.
<code class="python">from subprocess import Popen p = Popen(['watch', 'ls']) # something long running # ... do other stuff while subprocess is running p.terminate()</code>
Dalam contoh ini, contoh Popen dibuat, menghantar arahan dan hujahnya . Skrip Python kemudiannya boleh meneruskan dengan tugas lain sementara arahan luaran berjalan secara tidak segerak. Kemudian, contoh Popen boleh ditanya untuk status (cth., menggunakan poll()), berkomunikasi dengan (cth., melalui communication()), atau ditamatkan.
Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Perintah Luaran Secara Asynchronous dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!