oxipng/src
Ingvar Stepanyan e38c759563
Switch to crossbeam-channel + rayon::spawn (#327)
* Switch to crossbeam-channel + rayon::spawn

* Remove thread_spawn for evaluation altogether

This allows to avoid a deadlock when there is only one Rayon thread, and doesn't sacrifice performance, since the caller of .get_result() had to always block on the iterator to be finished anyway, and all the messages are already sent from separate threads.

* Fix `verbose_mode` test

This one is easier to "fix", since we're in control of the rayon pool - just adding one extra thread to the default number to make sure we always can one root "spawn" call without stealing from the actual pool.
2020-11-11 12:01:13 -05:00
..
deflate Make libdeflater and zopfli optional (#319) 2020-11-01 20:18:15 -05:00
png Optimize reading in files 2020-10-22 09:51:25 -04:00
reduction Fix new clippy lints from Rust 1.47 2020-10-09 20:20:52 -04:00
atomicmin.rs Use the new stabilised fetch_min (#328) 2020-10-11 18:53:00 -04:00
colors.rs Simplify comparer (#208) 2020-04-14 17:09:52 -04:00
error.rs Fix new clippy lint 2020-07-20 20:23:04 -04:00
evaluate.rs Switch to crossbeam-channel + rayon::spawn (#327) 2020-11-11 12:01:13 -05:00
filters.rs Reduce alloc in filtering/unfiltering by reusing buffers (#191) 2019-09-04 11:09:54 -04:00
headers.rs Migrate to Github Actions 2020-04-15 13:26:28 -04:00
interlace.rs Interlacing fixes (#182) 2019-07-24 09:16:13 -04:00
lib.rs Make libdeflater and zopfli optional (#319) 2020-11-01 20:18:15 -05:00
main.rs Do not exit on first non-PNG file found in recursion 2020-08-12 10:59:43 -04:00
rayon.rs Prepare for next release 2019-02-01 17:27:03 -05:00