使用Twisted进行非阻塞文件访问

rhe*_*ttg 27 python twisted

我试图弄清楚是否存在使用twisted的文件访问的事实模式.我看过的很多例子(twisted.python.log,twisted.persisted.dirdbm,twisted.web.static)实际上并不担心阻止文件访问.

似乎应该有一些明显的接口,可能继承自abstract.FileDescriptor,所有文件访问都应该作为生产者/消费者进行.

我是否遗漏了某些内容,或者仅仅是异步编程中的扭曲主要用于网络并且它还没有真正用于其他文件描述符操作,而不是担心非阻塞IO的纯度?

Ber*_*olt 14

我想你正在寻找fdesc模块.有关Python中非阻塞I/O的更多信息,您还可以观看此视频.


Aar*_*lla -8

我不确定你想实现什么目标。当您进行日志记录时,Python 将确保(通过全局解释器日志)来自多个线程的日志消息相继进入文件。

如果您担心阻塞 IO,那么操作系统会为您的文件添加默认缓冲区(通常为 4KB),并且您可以在调用中传递缓冲区大小open()

如果您担心其他问题,请澄清您的问题。

  • 什么不清楚?他想知道如何在 Twisted 中不阻塞地读/写文件。 (8认同)