我有一个液晶显示器,我用它来显示我正在我的XBMC上看的电影的时间码,我想显示当前的日期和小时时,什么都不播放。托管LCD的机器正在运行pythonTCPSocketServer服务器,接收要从XBMC安装中显示的文本。问题是我必须保持一个活跃的网络连接,这样XBMC就可以通过插座发送小时和日期,并且液晶显示器可以显示它。 在我看来,最好的做法是显示托管LCD的机器的日期,然后在插座处于活动状态时切换到“时间码视图”。在
是否有任何“pythonic”方法来设置TCPSocketServer,该服务器在等待连接时计算一个显示日期的循环,然后更改其行为以计算通过套接字接收的数据?在
非常感谢
这里有一些代码可以满足您的需要。它启动一个TCP服务器,监听发送到端口9876的文本。当它得到一些文本时,它将它发送到显示对象。代码还设置了一个计时器,它每秒运行一次,向显示对象发送“空闲文本”(即:当前时间戳)。在
显示从服务器获取正常更新文本,从第二个线程获取“空闲文本”。对象知道有多长时间没有收到真实文本,并显示其中一条或其他消息。在
如果显示对象连接到硬件,它可以使用
multiprocessing.RLock
或其他机制来保护自己。在玩得开心!在
在lcdcontrol.py来源
样品运行
在这里,我启动了服务器,等待了几秒钟,然后输入
fortune -s | nc localhost 9876
向我的液晶服务器发送一个简短的幸运饼。在注意“空闲计时器”在
^{pr2}$:07
停止,输出幸运cookie,等待5秒钟,然后继续执行:13
,:14
。在切换回空闲时间戳之前,消息显示五秒钟。在相关问题 更多 >
编程相关推荐