作为实验的一部分,我想为应用程序编写一个基于OpenGL的UI服务器,类似于架构中的X11或Quartz:核心进程将对象渲染到单个视口中,但所有图形对象都由远程进程控制
这个想法是视图稳定性仅取决于核心过程。如果客户端处理段错误,则可以安全地释放其分配的资源 - 该功能的要求是能够安全地找出客户端进程是否已崩溃。
这里的最佳做法是什么?
答案 0 :(得分:1)
我认为这应该被检测为与客户端连接的事件,就像任何其他客户端/服务器架构一样。
如果您使用套接字,套接字最终将注册一方已关闭套接字(因为进程崩溃,其套接字的末尾将被关闭),您可以检测到,查找服务器中的拥有客户端记录,并清理所有资源。
服务器直接(通过进程ID或其他)查找客户端是非常奇怪的,这也会不必要地将您的体系结构限制为仅在本地运行,而不是通过网络运行。