小编And*_*sen的帖子

Dart中未处理的异常

我在Dart写了一个网络服务器,并对异常有疑问.在我的HttpServer requesthandler中,我在整个方法中添加了一个try-catch块:

try{
 ...
} catch(e) {
 ...
}
Run Code Online (Sandbox Code Playgroud)

所以我希望这可以防止任何客户端请求崩溃Web服务器.问题是当从这个块中抛出某些异常时它崩溃(严重嵌套在其他模块中,但仍然从这个块启动).以下是此类例外的示例:

Unhandled exception:
FutureUnhandledException: exception while executing Future
  Illegal argument(s)
original stack trace:
  #0      _StringBase._createFromCodePoints (dart:core-patch:1403:3)
  #1      _StringBase.createFromCharCodes (dart:core-patch:1400:33)
  #2      String.String.fromCharCodes (dart:core-patch:1788:43)
  #3      _StringDecoderBase.decoded (dart:io:6485:12)
  #4      _File.readAsString.<anonymous closure> (dart:io:1307:29)
  #5      _FutureImpl.transform.<anonymous closure> (bootstrap:881:37)

 #0      _FutureImpl._complete (bootstrap:844:11)
 #1      _FutureImpl._complete (bootstrap:848:5)
 #2      _FutureImpl._setException (bootstrap:873:14)
 #3      _CompleterImpl.completeException (bootstrap:948:30)
 #4      _FutureImpl.transform.<anonymous closure> (bootstrap:884:36)
 #5      _FutureImpl._complete (bootstrap:840:19)
 #6      _FutureImpl._complete (bootstrap:848:5)
 #7      _FutureImpl._setValue (bootstrap:862:14)
 #8      _CompleterImpl.complete (bootstrap:945:26)
 #9      _File.readAsBytes.<anonymous closure> (dart:io:1281:25)
 #10     _BaseDataInputStream._checkScheduleCallbacks.issueCloseCallback (dart:io:6345:59)
 #11 …
Run Code Online (Sandbox Code Playgroud)

dart

3
推荐指数
1
解决办法
1486
查看次数

标签 统计

dart ×1