Julia websockets-什么是读写保护?

Julia websockets-什么是读写保护?,websocket,julia,Websocket,Julia,我注意到在JuliaWebSockets API中,有称为readguarded和writeguarded的函数。这些到底是干什么用的 这些文档似乎解释说,它们是用来记录错误的,但它们就是这么做的吗 使用readguarded或writeguarded时,会使用@debug记录错误 声明。将您使用的记录器的日志记录级别设置为“调试”,如下所示 在“examples/count_with_logger.jl”中 Julia的套接字例程的设计者决定让读写套接字例程在失败时抛出异常,类似于文件打开例程

我注意到在JuliaWebSockets API中,有称为readguarded和writeguarded的函数。这些到底是干什么用的

这些文档似乎解释说,它们是用来记录错误的,但它们就是这么做的吗

使用readguarded或writeguarded时,会使用@debug记录错误 声明。将您使用的记录器的日志记录级别设置为“调试”,如下所示 在“examples/count_with_logger.jl”中


Julia的套接字例程的设计者决定让读写套接字例程在失败时抛出异常,类似于文件打开例程在出错时抛出的异常。readguarded和writeguarded例程是封装在try catch中的套接字读写例程,因此它们可以从WebSockets.jl源代码返回以下异常错误:

function readguarded(ws)
    data = Vector{UInt8}()
    success = true
    try
        data = read(ws)
    catch err
        @debug err
        data = Vector{UInt8}()
        success = false
    finally
        return data, success
    end
end
@debug语句然后用于使用日志库记录错误,因为这些错误是在readguard和writeguard例程中捕获和隐藏的(通过设计)