微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

程序停止时服务器未终止

如何解决程序停止时服务器未终止

我用 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 举报,一经查实,本站将立刻删除。