Learn R Programming

parabar (version 1.1.1)

peek: Inspect a Backend

Description

This function can be used to check the names of the variables present on a backend created by start_backend().

Usage

peek(backend)

Value

The function returns a list of character vectors, where each list element corresponds to a node, and each element of the character vector is the name of a variable present on that node. It throws an error if the value provided for the backend argument is not an instance of class Backend.

Arguments

backend

An object of class Backend as returned by the start_backend() function.

Details

This function is a convenience wrapper around the lower-lever API of parabar aimed at developers. More specifically, this function calls the peek method on the provided backend instance.

See Also

start_backend(), export(), evaluate(), clear(), configure_bar(), par_sapply(), par_lapply(), par_apply(), stop_backend(), and Service.

Examples

Run this code
# Create an asynchronous backend.
backend <- start_backend(cores = 2, cluster_type = "psock", backend_type = "async")

# Check that the backend is active.
backend$active

# Check if there is anything on the backend.
peek(backend)

# Create a dummy variable.
name <- "parabar"

# Export the `name` variable in the current environment to the backend.
export(backend, "name", environment())

# Remove the dummy variable from the current environment.
rm(name)

# Check the backend to see that the variable has been exported.
peek(backend)

# Run an expression on the backend.
# Note that the symbols in the expression are resolved on the backend.
evaluate(backend, {
    # Print the name.
    print(paste0("Hello, ", name, "!"))
})

# Clear the backend.
clear(backend)

# Check that there is nothing on the backend.
peek(backend)

# Use a basic progress bar (i.e., see `parabar::Bar`).
configure_bar(type = "basic", style = 3)

# Run a task in parallel (i.e., approx. 1.25 seconds).
output <- par_sapply(backend, x = 1:10, fun = function(x) {
    # Sleep a bit.
    Sys.sleep(0.25)

    # Compute and return.
    return(x + 1)
})

# Print the output.
print(output)

# Stop the backend.
stop_backend(backend)

# Check that the backend is not active.
backend$active

Run the code above in your browser using DataLab