def METHOD_NAME(port, func, endpoint_error_handling):
    # wait for server to come up
    # receive cupy object
    # process suicides
    ucp.init()
    # must create context before importing
    # cudf/cupy/etc
    async def read():
        await asyncio.sleep(1)
        ep = await get_ep("client", port, endpoint_error_handling)
        msg = None
        import cupy
        cupy.cuda.set_allocator(None)
        frames, msg = await recv(ep)
        # Client process suicides to force an "Endpoint timeout"
        # on the server
        os.kill(os.getpid(), signal.SIGKILL)
    get_event_loop().run_until_complete(read())