【发布时间】:2014-07-28 07:06:05
【问题描述】:
需要在 Java 中为车辆跟踪系统建立 UDP 服务器。
注意DatagramSocket 有一个recieve 方法,它会阻塞程序执行,直到收到数据报。
我注意到有一个库 Kryonet 据说可以管理 UDP 服务器的线程。
我想不惜一切代价避免启动多线程程序,因为那是一种高级编程。
处理 HTTP 请求通常使用 Servlet 完成,难道没有成熟的解决方案来管理 UDP 数据报吗?
为这种情况制作一个同步(单线程)程序怎么样?
【问题讨论】:
-
查看
nio库。您必须编写自己的事件循环和调度代码,但从那里感觉应该类似于 servlet 编程。 -
我将从一个简单的单线程阻塞循环开始。如果事实证明有必要,您总是可以更有效地做到这一点。
-
使用Kryonet不是更容易吗?
-
@jacktrades KryoNet 有很多附加功能,这些功能可能有用,也可能会使事情复杂化。工具/库建议不在此处讨论。
-
你会发现任何涉及 NIO 的东西都比线程编程高级得多。
标签: java multithreading sockets udp