问题描述
我用 Dart 制作了一个简单的服务器应用程序,用于接收和返回消息。它工作得很好,除非当我停止程序时服务器继续在后台运行,我必须在再次运行程序之前转到 cmd 来终止任务。
为什么在程序停止时服务器没有终止,我该如何解决?
import 'dart:io' show HttpServer,HttpRequest,WebSocket,WebSocketTransformer;
void main() {
var sockets = <WebSocket>[];
var i = 0;
HttpServer.bind('localhost',8080).then((HttpServer server) {
print('[+]WebSocket listening at -- ws://localhost:8080/');
server.listen((HttpRequest request) {
WebSocketTransformer.upgrade(request).then((WebSocket ws) {
sockets.add(ws);
ws.listen(
(data) {
print(data);
for(var socket in sockets) {
socket.add('a msg back from the server: $i');
}
i++;
},onDone: () => print('[+]Done :)'),onError: (err) => print('[!]Error -- ${err.toString()}'),cancelOnError: true,);
},onError: (err) => print('[!]Error -- ${err.toString()}'));
},onError: (err) => print('[!]Error -- ${err.toString()}'));
},onError: (err) => print('[!]Error -- ${err.toString()}'));
}
预先感谢您的帮助。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)