1
1
mirror of https://github.com/wez/wezterm.git synced 2024-12-26 23:04:49 +03:00
wezterm/filedescriptor/Cargo.toml
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

27 lines
608 B
TOML

[package]
name = "filedescriptor"
version = "0.8.3"
authors = ["Wez Furlong"]
edition = "2018"
repository = "https://github.com/wez/wezterm"
description = "More ergonomic wrappers around RawFd and RawHandle"
license = "MIT"
documentation = "https://docs.rs/filedescriptor"
readme = "README.md"
keywords = ["socketpair", "pipe", "poll", "filedescriptor"]
[dependencies]
thiserror = "1.0"
libc = "0.2"
[target."cfg(windows)".dependencies]
winapi = { version = "0.3", features = [
"winuser",
"handleapi",
"fileapi",
"namedpipeapi",
"processthreadsapi",
"winsock2",
"processenv"
]}