在Linux(Ubuntu 14.04)上,使用默认的python(2.7.6),以下方法可以正确地将stdin的所有者设置为当前进程,以便我们收到SIGIO中断:
import os, sys, fcntl
fcntl.fcntl(sys.stdin, fcntl.F_SETOWN, os.getpid())
但是在OS X(10.9.2)上,默认python(2.7.5)中的同一行返回:
IOError: [Errno 25] Inappropriate ioctl for device
fcntl或Linux等效的OS X联机帮助页或python文档都没有提供任何帮助。
发生了什么?