# LibTmux::Async::Transport::close

- **Module:** LibTmux::Async
- **Package:** LibTmux-Async
- **Language:** Perl
- **Kind:** method
- **Source:** https://github.com/libtmux/libtmux-perl/blob/352715a4fa66a96eed7763b90daaa536aa2f121d/packages/async/lib/LibTmux/Async/Transport.pm#L218
- **Page:** https://libtmux.org/en/perl/latest/reference/libtmux-async-transport-close/

```
sub close($self)
```

Begin idempotent shutdown and return a fresh observer Future. New admissions fail with [`Closed`](/en/perl/latest/reference/libtmux-async-x-closed/); queued requests are cancelled without dispatch and running jobs are cancelled. Cancelling an observer never cancels private cleanup. Only successful `is_done` completion proves all owned jobs, pipes, and watchers have completed cleanup. The borrowed loop remains usable. Callers must keep driving it through shutdown.

## Methods
