Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Ghi file trong background trong Python

Trong hướng dẫn này, chúng ta sẽ học về multi-threading trong Python. Nó giúp thực hiện nhiều tác vụ cùng lúc. Python có module threading cho đa nhiệm.

Xem cách hoạt động bằng việc ghi dữ liệu vào file trong background đồng thời tính tổng các phần tử trong list. Các bước trong chương trình:

  • Import module threading.
  • Tạo class kế thừa threading.Thread.
  • Viết code ghi file trong phương thức run của class trên.
  • Khởi tạo dữ liệu cần thiết.
  • Viết code tính tổng các số trong list.

Ví dụ

# Import modules
import threading

# Tạo class kế thừa threading.Thread base class
class MultiTask(threading.Thread):
    def __init__(self, message, filename):
        # Gọi Base class
        threading.Thread.__init__(self)
        # Khởi tạo biến cho class
        self.message = message
        self.filename = filename

    # run method chạy trong background
    def run(self):
        # Mở file ở chế độ ghi
        with open(self.filename, 'w+') as file:
            file.write(self.message)
        print("Hoàn thành ghi file trong background")

# Code chính
if __name__ == '__main__':
    # Khởi tạo biến
    message = "We're from Tutorialspoint"
    filename = "tutorialspoint.txt"
    # Khởi tạo class cho ghi background
    file_write = MultiTask(message, filename)
    # Bắt đầu tác vụ background
    file_write.start()
    # Tác vụ khác
    print("Sẽ chạy song song với tác vụ trên")
    nums = [1, 2, 3, 4, 5]
    print(f"Tổng các số 1-5: {sum(nums)}")
    # Hoàn thành tác vụ background
    file_write.join()

Sẽ chạy song song với tác vụ trên

Tổng các số 1-5: 15

Hoàn thành ghi file trong background

Kết quả

Bạn có thể kiểm tra thư mục cho file. Nếu chạy code trên, sẽ có output sau:

Sẽ chạy song song với tác vụ trên
Tổng các số 1-5: 15
Hoàn thành ghi file trong background

Kết luận

Nếu có thắc mắc từ hướng dẫn, hãy đề cập ở phần comment.