micropython/tests/thread
David Lechner ffb43b2dd3 py/modthread: Return thread id from start_new_thread().
In CPython, `_thread.start_new_thread()` returns an ID that is the same ID
that is returned by `_thread.get_ident()`.  The current MicroPython
implementation of `_thread.start_new_thread()` always returns `None`.

This modifies the required functions to return a value. The native thread
id is returned since this can be used for interop with other functions, for
example, `pthread_kill()` on *nix. `_thread.get_ident()` is also modified
to return the native thread id so that the values match and avoids the need
for a separate `native_id` attribute.

Fixes issue #12153.

Signed-off-by: David Lechner <david@pybricks.com>
2023-09-03 18:49:18 +10:00
..
mutate_bytearray.py top: Update Python formatting to black "2023 stable style". 2023-02-02 12:51:03 +11:00
mutate_dict.py top: Update Python formatting to black "2023 stable style". 2023-02-02 12:51:03 +11:00
mutate_instance.py top: Update Python formatting to black "2023 stable style". 2023-02-02 12:51:03 +11:00
mutate_list.py top: Update Python formatting to black "2023 stable style". 2023-02-02 12:51:03 +11:00
mutate_set.py top: Update Python formatting to black "2023 stable style". 2023-02-02 12:51:03 +11:00
stress_aes.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
stress_create.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
stress_heap.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
stress_recurse.py tests: Format all Python code with black, except tests in basics subdir. 2020-03-30 13:21:58 +11:00
stress_schedule.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
stress_schedule.py.exp py/scheduler: Add assert that scheduler is locked when unlocking. 2020-04-13 21:55:47 +10:00
thread_exc1.py tests/thread: Make exc1,exit1,exit2,stacksize1,start1 tests run on rp2. 2021-05-10 13:07:16 +10:00
thread_exc2.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
thread_exc2.py.exp tests: Format all Python code with black, except tests in basics subdir. 2020-03-30 13:21:58 +11:00
thread_exit1.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
thread_exit2.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
thread_gc1.py tests: Format all Python code with black, except tests in basics subdir. 2020-03-30 13:21:58 +11:00
thread_heap_lock.py py/gc: Make gc_lock_depth have a count per thread. 2021-05-10 13:07:16 +10:00
thread_heap_lock.py.exp py/gc: Make gc_lock_depth have a count per thread. 2021-05-10 13:07:16 +10:00
thread_ident1.py py/modthread: Return thread id from start_new_thread(). 2023-09-03 18:49:18 +10:00
thread_lock1.py all: Fix spelling mistakes based on codespell check. 2023-04-27 18:03:06 +10:00
thread_lock2.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
thread_lock3.py tests: Format all Python code with black, except tests in basics subdir. 2020-03-30 13:21:58 +11:00
thread_lock4.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
thread_lock5.py esp32/mpthreadport: Use binary semaphore instead of mutex. 2021-05-08 22:47:03 +10:00
thread_qstr1.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
thread_shared1.py tests: Format all Python code with black, except tests in basics subdir. 2020-03-30 13:21:58 +11:00
thread_shared2.py tests: Format all Python code with black, except tests in basics subdir. 2020-03-30 13:21:58 +11:00
thread_sleep1.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
thread_stacksize1.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
thread_start1.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
thread_start2.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00