### Class

# Gio SimpleIOStream

since: 2.44

#### Description

    final class Gio.SimpleIOStream : Gio.IOStream
    {
      /* No available fields */
    }

`GSimpleIOStream` creates a `GIOStream` from an arbitrary `GInputStream` and `GOutputStream`. This allows any pair of input and output streams to be used with `GIOStream` methods.

This is useful when you obtained a `GInputStream` and a `GOutputStream` by other means, for instance creating them with platform specific methods as `g_unix_input_stream_new()` (from `gio-unix-2.0.pc` / `GioUnix-2.0`), and you want to take advantage of the methods provided by `GIOStream`.

Available since: 2.44

#### Ancestors

- GIOStream
- GObject

#### Constructors

###### g_simple_io_stream_new

Creates a new `GSimpleIOStream` wrapping `input_stream` and `output_stream`. See also `GIOStream`.

since: 2.44

#### Instance methods

##### Methods inherited from GIOStream (10)

###### g_io_stream_clear_pending

Clears the pending flag on `stream`.

since: 2.22

###### g_io_stream_close

Closes the stream, releasing resources related to it. This will also close the individual input and output streams, if they are not already closed.

since: 2.22

###### g_io_stream_close_async

Requests an asynchronous close of the stream, releasing resources related to it. When the operation is finished `callback` will be called. You can then call `g_io_stream_close_finish()` to get the result of the operation.

since: 2.22

###### g_io_stream_close_finish

Closes a stream.

since: 2.22

###### g_io_stream_get_input_stream

Gets the input stream for this object. This is used for reading.

since: 2.22

###### g_io_stream_get_output_stream

Gets the output stream for this object. This is used for writing.

since: 2.22

###### g_io_stream_has_pending

Checks if a stream has pending actions.

since: 2.22

###### g_io_stream_is_closed

Checks if a stream is closed.

since: 2.22

###### g_io_stream_set_pending

Sets `stream` to have actions pending. If the pending flag is already set or `stream` is closed, it will return `FALSE` and set `error`.

since: 2.22

###### g_io_stream_splice_async

Asynchronously splice the output stream of `stream1` to the input stream of `stream2`, and splice the output stream of `stream2` to the input stream of `stream1`.

since: 2.28

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

#### Properties

###### Gio.SimpleIOStream:input-stream

The `GInputStream` to read from.

since: 2.44

###### Gio.SimpleIOStream:output-stream

The `GOutputStream` to write to.

since: 2.44

##### Properties inherited from GIOStream (3)

###### Gio.IOStream:closed

Whether the stream is closed.

since: 2.22

###### Gio.IOStream:input-stream

The `GInputStream` to read from.

since: 2.22

###### Gio.IOStream:output-stream

The `GOutputStream` to write to.

since: 2.22

#### Signals

##### Signals inherited from GObject (1)

###### GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

since: 2.0