Better Processes

An asset by GreenFox
The page banner background of a mountain and forest
Better Processes hero image

Quick Information

0 ratings
Better Processes icon image
GreenFox
Better Processes

OS.execute() lets you get the output, but it blocks the thread.OS.create_process() kicks off a process in the background, but drops the output.Better Processes lets you interactively create a background process.It's built in Rust. Compiles to GDExtention. You won't have to worry about that.Add a ProcessNode. Connect the stdout/stderr signals. Set the cmd,args, start_on_ready (or run "start" as needed) if you need it. If the process is still running when this node is deleted, it will close the child process. Or create a Process object and call `start(cmd,args)`. You'll have to explicitly call `read_stdout()` and `read_stderr`. However the advantage is that when the last reference goes out of scope, it closes the child process.Note: Due to GodotRust's current strictness, you must use the correct type args, no implicit typing. For example:`myProcess.start("ping",["google.com"] as PackedStringArray)`The `as PackedStringArray` is important here.

Supported Engine Version
4.0
Version String
0.3.2
License Version
MPL-2.0
Support Level
community
Modified Date
1 year ago
Git URL
Issue URL

OS.execute() lets you get the output, but it blocks the thread.
OS.create_process() kicks off a process in the background, but drops the output.

Better Processes lets you interactively create a background process.

It's built in Rust. Compiles to GDExtention. You won't have to worry about that.

Add a ProcessNode. Connect the stdout/stderr signals. Set the cmd,args, start_on_ready (or run "start" as needed) if you need it. If the process is still running when this node is deleted, it will close the child process.

Or create a Process object and call `start(cmd,args)`. You'll have to explicitly call `read_stdout()` and `read_stderr`. However the advantage is that when the last reference goes out of scope, it closes the child process.

Note: Due to GodotRust's current strictness, you must use the correct type args, no implicit typing. For example:
`myProcess.start("ping",["google.com"] as PackedStringArray)`
The `as PackedStringArray` is important here.

Reviews

0 ratings

Your Rating

Headline must be at least 3 characters but not more than 50
Review must be at least 5 characters but not more than 500
Please sign in to add a review

Quick Information

0 ratings
Better Processes icon image
GreenFox
Better Processes

OS.execute() lets you get the output, but it blocks the thread.OS.create_process() kicks off a process in the background, but drops the output.Better Processes lets you interactively create a background process.It's built in Rust. Compiles to GDExtention. You won't have to worry about that.Add a ProcessNode. Connect the stdout/stderr signals. Set the cmd,args, start_on_ready (or run "start" as needed) if you need it. If the process is still running when this node is deleted, it will close the child process. Or create a Process object and call `start(cmd,args)`. You'll have to explicitly call `read_stdout()` and `read_stderr`. However the advantage is that when the last reference goes out of scope, it closes the child process.Note: Due to GodotRust's current strictness, you must use the correct type args, no implicit typing. For example:`myProcess.start("ping",["google.com"] as PackedStringArray)`The `as PackedStringArray` is important here.

Supported Engine Version
4.0
Version String
0.3.2
License Version
MPL-2.0
Support Level
community
Modified Date
1 year ago
Git URL
Issue URL

Open Source

Released under the AGPLv3 license

Plug and Play

Browse assets directly from Godot

Community Driven

Created by developers for developers