Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Muat Semula Modul Python Tanpa Memulakan Semula Pelayan?
Memuat Semula Modul Python untuk Peningkatan Pelayan
Mengekalkan pelayan Python yang berjalan lama boleh memerlukan peningkatan tanpa memulakan semula keseluruhan pelayan. Satu pendekatan untuk ini ialah memunggah dan memuat semula modul tertentu.
Soalan: Bagaimana untuk Memunggah dan Muat Semula Modul Python?
Untuk memunggah modul yang diimport sebelum ini dan memuatkannya versi dikemas kini tanpa memulakan semula pelayan:
Jawapan: Gunakan importlib.reload() Fungsi
Untuk Python 3.4 , gunakan fungsi importlib.reload():
from importlib import reload import foo while True: # Perform actions if is_changed(foo): foo = reload(foo)
Untuk Python 2, gunakan fungsi muat semula modul imp.
Mengikat semula Rujukan
Selepas memuatkan semula modul, ia objek akan dicipta semula, tetapi rujukan luaran perlu dikemas kini. Dalam contoh yang diberikan, jika objek Foo berada dalam modul foo, anda perlu menciptanya semula.
Teknik ini biasanya digunakan untuk muat semula panas dalam pelayan pembangunan Django, membenarkan perubahan dalam kod ditunjukkan tanpa dimulakan semula pelayan.
Memuat Semula Modul Python Butiran
Importlib.reload() menyusun semula kod modul, melaksanakan semula kod peringkat modul dan mengemas kini kamus modul dengan objek baharu. Objek lama akan menjadi sampah yang dikumpul apabila bilangan rujukan menurun kepada sifar.
Rujukan tidak terikat kepada objek lama di luar modul perlu dikemas kini secara manual jika dikehendaki.
Atas ialah kandungan terperinci Bagaimana untuk Muat Semula Modul Python Tanpa Memulakan Semula Pelayan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!