异步函数通常不使用异常。
即使在同步调用中,Asio和Boost-Beast也有重载,它接受CoreData: annotation: Failed to load optimized model at path '/var/containers/Bundle/Application/80A98E72-4896-4D03-B2CF-5DEB9B9970CD/Map.app/GoogleMaps.bundle/GMSCacheStorage.momd/Storage.omo'
CoreData: annotation: Failed to load optimized model at path '/var/containers/Bundle/Application/80A98E72-4896-4D03-B2CF-5DEB9B9970CD/Map.app/GoogleMaps.bundle/GMSCacheStorage.momd/Storage.omo'
CoreData: annotation: Failed to load optimized model at path '/var/containers/Bundle/Application/80A98E72-4896-4D03-B2CF-5DEB9B9970CD/Map.app/GoogleMaps.bundle/GMSCacheStorage.momd/Storage.omo'
类型的输出参数而不是抛出。
异步操作不能抛出异常,因为操作未在调用代码¹的堆栈帧中完成。
是否存在技术原因导致这些未声明为system_error&
?
除了可能的性能优势外,我还认为它可以作为用户的提示,因为用户知道他们不需要异常处理。
¹从技术上讲,它们可能会抛出异常检查或无效参数等异常