1
1
mirror of https://github.com/wez/wezterm.git synced 2024-12-23 13:21:38 +03:00
wezterm/wezterm-ssh
Wez Furlong e090eb9eae
Image decoding is now done in a bg thread
Continuing from the previous commit, this shifts:

* In-memory data -> temporary file
* Image decoding -> background thread

The background thread asynchronously decodes frames and
sends them to the render thread via a bounded channel.

While decoding frames, it writes them, uncompressed, to
a scratch file so that when the animation loops, it is
a very cheap operation to rewind and pull that data
from the file, without having to burn CPU to re-decode
the data from the start.

Memory usage is bounded to 4 uncompressed frames while
decoding, then 3 uncompressed frames (triple buffered)
while looping over the rest.

However, disk usage is N uncompressed frames.

refs: https://github.com/wez/wezterm/issues/3263
2023-03-17 11:41:20 -07:00
..
examples fixup build for pty api change 2022-08-12 08:45:02 -07:00
src ssh: support %l and %L in config files 2023-03-01 18:44:11 -07:00
tests wezterm-ssh: fix leaky tests, as described in https://nexte.st/book/leaky-tests.html 2023-03-12 20:34:37 -07:00
Cargo.toml Image decoding is now done in a bg thread 2023-03-17 11:41:20 -07:00
LICENSE.md Add missing license files 2022-08-17 07:19:12 -07:00