我有一个使用大量堆栈的程序。我使用Linux,所以已经通过ulimit -s 1048576设置了堆栈大小限制。运行cargo test -- --test-threads 1可以正常工作,但是当我使用多个线程时,例如cargo test -- --test-threads 2,我得到fatal runtime error: stack overflow。我相信这是因为运行测试时使用的Rust线程默认堆栈大小太小。如何在运行cargo test时增加堆栈大小?
ulimit -s 1048576
cargo test -- --test-threads 1
cargo test -- --test-threads 2
fatal runtime error: stack overflow
cargo test
g9icjywg1#
找到了:RUST_MIN_STACK,就是RUST_MIN_STACK=104857600 cargo test。
RUST_MIN_STACK
RUST_MIN_STACK=104857600 cargo test
dced5bon2#
使用stacker可以增加线程的大小
2条答案
按热度按时间g9icjywg1#
找到了:
RUST_MIN_STACK
,就是RUST_MIN_STACK=104857600 cargo test
。dced5bon2#
使用stacker可以增加线程的大小