Chỉ số API cấp thấp

Trang này liệt kê tất cả các API asyncio cấp thấp.

Lấy vòng lặp sự kiện

asyncio.get_running_loop()

Hàm preferred để lấy vòng lặp sự kiện đang chạy.

asyncio.get_event_loop()

Nhận một phiên bản vòng lặp sự kiện (đang chạy hoặc hiện tại thông qua chính sách hiện tại).

asyncio.set_event_loop()

Đặt vòng lặp sự kiện như hiện tại thông qua chính sách hiện tại.

asyncio.new_event_loop()

Tạo một vòng lặp sự kiện mới.

Ví dụ

Phương pháp vòng lặp sự kiện

Xem thêm phần tài liệu chính về Phương pháp vòng lặp sự kiện.

Vòng đời

loop.run_until_complete()

Chạy Tương lai/Nhiệm vụ/có thể chờ đợi cho đến khi hoàn thành.

loop.run_forever()

Chạy vòng lặp sự kiện mãi mãi.

loop.stop()

Dừng vòng lặp sự kiện.

loop.close()

Đóng vòng lặp sự kiện.

loop.is_running()

Trả về True nếu vòng lặp sự kiện đang chạy.

loop.is_closed()

Trả về True nếu vòng lặp sự kiện bị đóng.

await loop.shutdown_asyncgens()

Đóng máy phát điện không đồng bộ.

Gỡ lỗi

loop.set_debug()

Bật hoặc tắt chế độ gỡ lỗi.

loop.get_debug()

Nhận chế độ gỡ lỗi hiện tại.

Lên lịch gọi lại

loop.call_soon()

Gọi lại sớm.

loop.call_soon_threadsafe()

Một biến thể an toàn theo luồng của loop.call_soon().

loop.call_later()

Gọi lại after vào thời gian nhất định.

loop.call_at()

Gọi lại at vào thời gian nhất định.

Chủ đề/Thông dịch viên/Nhóm quy trình

await loop.run_in_executor()

Chạy chức năng chặn CPU hoặc chức năng chặn khác trong trình thực thi concurrent.futures.

loop.set_default_executor()

Đặt trình thực thi mặc định cho loop.run_in_executor().

Nhiệm vụ và tương lai

loop.create_future()

Tạo một đối tượng Future.

loop.create_task()

Lên lịch coroutine dưới dạng Task.

loop.set_task_factory()

Đặt nhà máy được loop.create_task() sử dụng để tạo Tasks.

loop.get_task_factory()

Lấy loop.create_task() nhà máy sử dụng để tạo Tasks.

DNS

await loop.getaddrinfo()

Phiên bản không đồng bộ của socket.getaddrinfo().

await loop.getnameinfo()

Phiên bản không đồng bộ của socket.getnameinfo().

Mạng và IPC

await loop.create_connection()

Mở kết nối TCP.

await loop.create_server()

Tạo một máy chủ TCP.

await loop.create_unix_connection()

Mở kết nối ổ cắm Unix.

await loop.create_unix_server()

Tạo một máy chủ ổ cắm Unix.

await loop.connect_accepted_socket()

Gói socket thành một cặp (transport, protocol).

await loop.create_datagram_endpoint()

Mở kết nối datagram (UDP).

await loop.sendfile()

Gửi một tập tin qua một phương tiện giao thông.

await loop.start_tls()

Nâng cấp kết nối hiện có lên TLS.

await loop.connect_read_pipe()

Quấn đầu đọc của ống thành cặp (transport, protocol).

await loop.connect_write_pipe()

Quấn đầu ghi của ống thành cặp (transport, protocol).

Ổ cắm

await loop.sock_recv()

Nhận dữ liệu từ socket.

await loop.sock_recv_into()

Nhận dữ liệu từ socket vào bộ đệm.

await loop.sock_recvfrom()

Nhận datagram từ socket.

await loop.sock_recvfrom_into()

Nhận datagram từ socket vào bộ đệm.

await loop.sock_sendall()

Gửi dữ liệu tới socket.

await loop.sock_sendto()

Gửi một datagram qua socket đến địa chỉ đã cho.

await loop.sock_connect()

Kết nối socket.

await loop.sock_accept()

Chấp nhận kết nối socket.

await loop.sock_sendfile()

Gửi một tập tin qua socket.

loop.add_reader()

Bắt đầu xem bộ mô tả tệp để biết tính sẵn sàng đọc.

loop.remove_reader()

Dừng xem bộ mô tả tệp để biết tính sẵn sàng đọc.

loop.add_writer()

Bắt đầu xem bộ mô tả tệp để biết tính sẵn sàng ghi.

loop.remove_writer()

Dừng xem bộ mô tả tệp để biết tính sẵn sàng ghi.

Tín hiệu Unix

loop.add_signal_handler()

Thêm trình xử lý cho signal.

loop.remove_signal_handler()

Xóa trình xử lý cho signal.

Quy trình con

loop.subprocess_exec()

Sinh ra một quy trình con.

loop.subprocess_shell()

Sinh ra một quy trình con từ lệnh shell.

Xử lý lỗi

loop.call_exception_handler()

Gọi trình xử lý ngoại lệ.

loop.set_exception_handler()

Đặt trình xử lý ngoại lệ mới.

loop.get_exception_handler()

Nhận trình xử lý ngoại lệ hiện tại.

loop.default_exception_handler()

Việc triển khai xử lý ngoại lệ mặc định.

Ví dụ

Vận chuyển

Tất cả các phương tiện vận chuyển đều thực hiện các phương pháp sau:

transport.close()

Đóng phương tiện vận chuyển.

transport.is_closing()

Trả về True nếu quá trình vận chuyển đang đóng hoặc đã đóng.

transport.get_extra_info()

Yêu cầu thông tin về vận chuyển.

transport.set_protocol()

Đặt một giao thức mới.

transport.get_protocol()

Trả về giao thức hiện tại.

Các phương tiện vận chuyển có thể nhận dữ liệu (kết nối TCP và Unix, đường ống, v.v.). Được trả về từ các phương thức như loop.create_connection(), loop.create_unix_connection(), loop.connect_read_pipe(), v.v.:

Đọc phương tiện giao thông

transport.is_reading()

Trả về True nếu phương tiện đang nhận.

transport.pause_reading()

Tạm dừng nhận.

transport.resume_reading()

Tiếp tục nhận.

Các phương tiện truyền tải có thể gửi dữ liệu (kết nối TCP và Unix, đường ống, v.v.). Được trả về từ các phương thức như loop.create_connection(), loop.create_unix_connection(), loop.connect_write_pipe(), v.v.:

Viết phương tiện vận chuyển

transport.write()

Ghi dữ liệu vào phương tiện vận chuyển.

transport.writelines()

Viết bộ đệm cho việc vận chuyển.

transport.can_write_eof()

Trả về True nếu phương tiện vận chuyển hỗ trợ gửi EOF.

transport.write_eof()

Đóng và gửi EOF sau khi xóa dữ liệu được lưu vào bộ đệm.

transport.abort()

Đóng phương tiện vận chuyển ngay lập tức.

transport.get_write_buffer_size()

Trả về kích thước hiện tại của bộ đệm đầu ra.

transport.get_write_buffer_limits()

Trả lại dấu nước cao và thấp để kiểm soát dòng ghi.

transport.set_write_buffer_limits()

Đặt dấu nước cao và thấp mới để kiểm soát luồng ghi.

Các phương tiện vận chuyển được trả về bởi loop.create_datagram_endpoint():

Vận chuyển gói dữ liệu

transport.sendto()

Gửi dữ liệu đến máy ngang hàng từ xa.

transport.abort()

Đóng phương tiện vận chuyển ngay lập tức.

Sự trừu tượng hóa vận chuyển ở mức độ thấp trên các quy trình con. Được trả lại bởi loop.subprocess_exec()loop.subprocess_shell():

Vận chuyển quy trình con

transport.get_pid()

Trả về id tiến trình con.

transport.get_pipe_transport()

Trả lại phương tiện vận chuyển cho đường ống liên lạc được yêu cầu (stdin, stdout hoặc stderr).

transport.get_returncode()

Trả về mã trả về quy trình con.

transport.kill()

Giết quá trình con.

transport.send_signal()

Gửi tín hiệu đến quy trình con.

transport.terminate()

Dừng quá trình con.

transport.close()

Giết tiến trình con và đóng tất cả các đường ống.

Giao thức

Các lớp giao thức có thể triển khai callback methods sau:

callback connection_made()

Được gọi khi kết nối được thực hiện.

callback connection_lost()

Được gọi khi kết nối bị mất hoặc đóng.

callback pause_writing()

Được gọi khi vùng đệm của phương tiện di chuyển vượt qua mực nước cao.

callback resume_writing()

Được gọi khi vùng đệm của phương tiện vận chuyển thoát xuống dưới mức nước thấp.

Giao thức truyền phát (TCP, Ổ cắm Unix, Ống)

callback data_received()

Được gọi khi nhận được một số dữ liệu.

callback eof_received()

Được gọi khi nhận được EOF.

Giao thức truyền phát được đệm

callback get_buffer()

Được gọi để phân bổ bộ đệm nhận mới.

callback buffer_updated()

Được gọi khi bộ đệm được cập nhật với dữ liệu nhận được.

callback eof_received()

Được gọi khi nhận được EOF.

Giao thức gói dữ liệu

callback datagram_received()

Được gọi khi nhận được datagram.

callback error_received()

Được gọi khi thao tác gửi hoặc nhận trước đó tạo ra OSError.

Giao thức quy trình con

callback pipe_data_received()

Được gọi khi tiến trình con ghi dữ liệu vào ống stdout hoặc stderr của nó.

callback pipe_connection_lost()

Được gọi khi một trong các đường ống giao tiếp với tiến trình con bị đóng.

callback process_exited()

Được gọi khi tiến trình con đã thoát. Nó có thể được gọi trước các phương thức pipe_data_received()pipe_connection_lost().

Chính sách vòng lặp sự kiện

Chính sách là một cơ chế cấp thấp nhằm thay đổi hành vi của các chức năng như asyncio.get_event_loop(). Xem thêm policies section chính để biết thêm chi tiết.

Truy cập chính sách

asyncio.get_event_loop_policy()

Trả về chính sách toàn quy trình hiện tại.

asyncio.set_event_loop_policy()

Đặt chính sách toàn quy trình mới.

AbstractEventLoopPolicy

Lớp cơ sở cho các đối tượng chính sách.