1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
Index: rayon-core/tests/stack_overflow_crash.rs
===================================================================
--- rayon-core.orig/tests/stack_overflow_crash.rs
+++ rayon-core/tests/stack_overflow_crash.rs
@@ -72,4 +72,9 @@ fn main() {
- let pool = ThreadPoolBuilder::new()
- .stack_size(stack_size_in_mb * 1024 * 1024)
+ let mut poolbuilder = ThreadPoolBuilder::new()
+ .stack_size(stack_size_in_mb * 1024 * 1024);
+ #[cfg(target_pointer_width = "32")]
+ if std::thread::available_parallelism().map(|n| n.get()).unwrap_or(1) > 8 {
+ poolbuilder = poolbuilder.num_threads(8);
+ }
+ let pool = poolbuilder
.build()
- .unwrap();
+ .expect(&format!("failed to initialise a thread pool with a stack size of {} MB",stack_size_in_mb));
|