displayno是X11 显示名称的一部分.
我已经看到几个定义解释它是一个从0开始的数字,但我没有看到任何文件解释是否有最大显示数字.
什么是最高显示数量?它在哪里定义?
这个问题的背景是我试图理解PyVirtualDisplay的显示数量分配算法.我还没有理解/tmp/.X*lock文件的作用,但看起来分配例程会选择总是增加显示数字,建议在反复调用的某个阶段,它可能达到极限并且会翻倒,特别是如果它很小.
小智 11
简短回答:它没有明确定义.
更长的答案:它取决于您碰巧使用的流协议.在TCP中它恰好被简单地添加到基本端口号6000,这意味着服务器将无法在显示号码59535附近启动.在unix域套接字上它只是一个附加到套接字名称下的整数/tmp/.X11-unix(所以如果你是用-nolisten tcp你启动服务器可以有几十亿左右).在DECnet ......好吧,我不知道,但是如果你发现自己处于一种需要关心的状态,我很抱歉.
后代的答案可能更好:如果您使用的是足够新的X服务器,您可以使用该-displayfd <n>参数告诉服务器只需选择一个可用的显示号码,然后在该文件描述符上将其写回给您.认为这是xserver 1.13中的新功能,应该会在2012年末推出.