diff options
author | Joe Wilm <joe@jwilm.com> | 2016-08-29 19:23:04 -0700 |
---|---|---|
committer | Joe Wilm <joe@jwilm.com> | 2016-08-29 19:23:04 -0700 |
commit | fd755831f2cae4e36206f28b06b205a7a53063e1 (patch) | |
tree | da5ea1a7e345cd141c21adfa8c0a8f104b004114 /Cargo.lock | |
parent | 3c5d46c8518fb6a1a6e1679ba3a2cc8815f37d3c (diff) | |
download | alacritty-fd755831f2cae4e36206f28b06b205a7a53063e1.tar.gz alacritty-fd755831f2cae4e36206f28b06b205a7a53063e1.zip |
Separate input handling from rendering
To minimize rendering, the input must be handled in a separate thread.
To see, why, consider the optimal rendering solution: renders are only
necessary when the pty has data that changes the terminal state, OR
there is a window event which changes the graphics state. When not
drawing, the render thread is to remain parked at a condition variable,
and it's not possible to handle input while parked! Thus, we need a
separate thread.
In addition to adding the separate thread, each subsystem thread is now
spawned in a separate function to (hopefully) improve readability.
Diffstat (limited to 'Cargo.lock')
-rw-r--r-- | Cargo.lock | 13 |
1 files changed, 11 insertions, 2 deletions
@@ -10,7 +10,7 @@ dependencies = [ "glutin 0.6.1 (git+https://github.com/jwilm/glutin?rev=22cc23997389bedd948a3ddc3833279ed308a673)", "libc 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "notify 2.6.2 (registry+https://github.com/rust-lang/crates.io-index)", - "parking_lot 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 0.7.14 (registry+https://github.com/rust-lang/crates.io-index)", "serde_macros 0.7.14 (registry+https://github.com/rust-lang/crates.io-index)", "serde_yaml 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -562,11 +562,20 @@ dependencies = [ [[package]] name = "parking_lot" -version = "0.2.6" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "parking_lot_core 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "parking_lot_core" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", ] |