3
我測試python socket編程。並修改選項如下圖所示是在Mac如何增加python select中的filedescriptor的範圍select()
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
max locked memory (kbytes, -l) unlimited
max memory size (kbytes, -m) unlimited
open files (-n) 100000
pipe size (512 bytes, -p) 1
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 709
virtual memory (kbytes, -v) unlimited
但出現以下錯誤。
Traceback (most recent call last):
File "ssub.py", line 63, in createMqttClient
rc = mqttc.loop()
File "/Library/Python/2.7/site-packages/mosquitto.py", line 633, in loop
socklist = select.select(rlist, wlist, [], timeout)
**ValueError: filedescriptor out of range in select()**
增加文件描述符怎麼寫select()
功能?
注意:在Windows下,限制是不同的 - 在Windows下,重要的是描述符的數量,而不是最大描述符的值。 –
啊,是的,好點。來想一想,我並不完全確定沒有辦法擺脫Windows上的限制,但我不知道其中之一。它可能很方便,因爲我不相信'poll()'在Windows上可用。 – Cartroo
現代版本的Windows確實擁有WSAPoll(),它幾乎與poll()相同... –