executeInContext(_:)

    Executes the given function in the context of this event loop. This is useful when it’s necessary to be confident that an operation is “blocking” the event loop. As long as you are executing, nothing else can execute in this loop.

    AsyncTestingEventLoop.swift:283
    iOS
    13.0+
    macOS
    10.15+
    tvOS
    13.0+
    watchOS
    6.0+
    func executeInContext<ReturnType>(_ task: @escaping () throws -> ReturnType) async throws -> ReturnType where ReturnType : Sendable

    While this call is running, no action can take place on the loop. This function can therefore be a good place to schedule a bunch of tasks “at once”, with a guarantee that none of them can progress. It’s also useful if you have types that can only be safely accessed from the event loop thread and want to be 100% sure of the thread-safety of accessing them.

    Be careful not to try to spin the event loop again from within this callback, however. As long as this function is on the call stack the NIOAsyncTestingEventLoop cannot progress, and so any attempt to progress it will block until this function returns.

    Other members in extension

    Type members

    • init()

      Initialize a new NIOAsyncTestingEventLoop.

    Instance members

    Show implementation details (4)

    Hide implementation details