<分区>
我对 C++ 相当陌生,尤其是面向对象的类设计。 我想设计一个支持以下内容的路由器类:
我在下面寻求指导的主要领域是如何设计类和 Router 类方法,以 boost 在主机和客户端之间建立链接的方式分离主机和监听器线程。宿主类和客户端类将有自己的写方法。
目前我有一个主机类、客户端类和一个客户端监听器类。 主机将在自己的线程上运行并拥有唯一的套接字。 客户端监听器将在其自己的线程上运行,并在客户端连接时启动客户端类的实例,每个实例都有自己的套接字。客户端监听线程只会在主机线程连接后启动。
从主机收到的任何消息都将: 1)路由到所有客户端 2) 根据消息中的关键信息路由到特定的客户端。将维护套接字表的 key 。
从客户端收到的任何消息都将无条件地路由(写入)主机套接字。第二阶段将实现对多个主机的支持,并使用相应的方案处理路由到哪个主机。此外,我正在使用 boost::asio 进行通信。
如有任何帮助,我们将不胜感激。如果这对你们中的一些人来说太初级了,请 对不起。 谢谢