### Method

# Ide Subprocess communicate_async

#### Declaration

    void
    ide_subprocess_communicate_async (
      IdeSubprocess* self,
      GBytes* stdin_buf,
      GCancellable* cancellable,
      GAsyncReadyCallback callback,
      gpointer user_data
    )

#### Description

Asynchronously communicates with the the child process.

There is no need to call `ide_subprocess_wait()` on the process if using this asynchronous operation as it will internally wait for the child to exit or be signaled.

Ensure you’ve set the proper flags to ensure that you can write to stdin or read from stderr/stdout as necessary.

Available since: | 3.32

#### Parameters

`stdin_buf` | `GBytes`
| A `GBytes` to send to stdin or `NULL`.
| The argument can be `NULL`.
| The data is owned by the caller of the function.
`cancellable` | `GCancellable`
| A `GCancellable` or `NULL`.
| The argument can be `NULL`.
| The data is owned by the caller of the function.
`callback` | `GAsyncReadyCallback`
| A callback to complete the request.
| The argument can be `NULL`.
`user_data` | `gpointer`
| User data for `callback`.
| The argument can be `NULL`.
| The data is owned by the caller of the function.