summaryrefslogtreecommitdiff
path: root/tests/thread/stress_recurse.py
blob: 8edee246ad14ee121a5a2f66a9dfdb4affb09d2c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# test hitting the function recursion limit within a thread
#
# SPDX-FileCopyrightText: Copyright (c) 2016 Damien P. George on behalf of Pycom Ltd
#
# SPDX-License-Identifier: MIT

import _thread

def foo():
    foo()

def thread_entry():
    try:
        foo()
    except RuntimeError:
        print('RuntimeError')
    global finished
    finished = True

finished = False

_thread.start_new_thread(thread_entry, ())

# busy wait for thread to finish
while not finished:
    pass
print('done')