_thread stacks size bug
-
In the documentation, it says that the command _thread.stack_size() with no argument returns the thread stack size used when creating new threads. I find that using this command resets the stack size to the default 0.
import _thread import utime def printStack(): tick = 0 while True: utime.sleep(1) print('stack size = {}'.format(_thread.stack_size())) _thread.stack_size(12288) _thread.start_new_thread(printStack, ())
printout:
stack size = 32768
stack size = 0
stack size = 0
stack size = 0
....So it appears the documentation is incorrect, and the command actually resets the stack size to 0.
Bonus question: is there a recommended limit to how large a thread stack size should be? is there any downside in having It large?
Thanks,
Troy