如果我想用Java创建一个简单的多客户端TCP服务器,我将等待连接,并创建另一个使用线程池来处理每个线程的线程。
我想知道这段代码是否允许我执行相同的行为,而无需在Dart中为每个客户端显式打开线程:
ServerSocket.bind('127.0.0.1', 4041)
.then((serverSocket) {
serverSocket.listen((socket) {
socket.transform(utf8.decoder).listen(handleClient);
});
});
void handleClient(Socket socket){
// do something
}
如果没有,我将如何实现这种行为?最好以Darty
的方式。
答案 0 :(得分:1)
Aqueduct和Angel Web框架均支持预生成的隔离,以确保您的所有核心都可以发挥作用。
答案 1 :(得分:0)
Dart默认情况下使用单线程并发。 如果要使代码在另一个线程上运行,则需要显式创建一个新的隔离。
Dart支持在同一IP和端口上侦听多个线程,并自动将传入的连接分配给侦听线程。
另请参见