esp32/modmachine: Release the GIL in machine.idle().
So that other threads get a chance to run when taskYIELD() is called. See issue #5344. Signed-off-by: Damien George <damien@micropython.org>
This commit is contained in:
parent
6bc50c4fa9
commit
2cfbe5bc0f
@ -232,7 +232,9 @@ STATIC mp_obj_t machine_unique_id(void) {
|
|||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_0(machine_unique_id_obj, machine_unique_id);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_0(machine_unique_id_obj, machine_unique_id);
|
||||||
|
|
||||||
STATIC mp_obj_t machine_idle(void) {
|
STATIC mp_obj_t machine_idle(void) {
|
||||||
|
MP_THREAD_GIL_EXIT();
|
||||||
taskYIELD();
|
taskYIELD();
|
||||||
|
MP_THREAD_GIL_ENTER();
|
||||||
return mp_const_none;
|
return mp_const_none;
|
||||||
}
|
}
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_0(machine_idle_obj, machine_idle);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_0(machine_idle_obj, machine_idle);
|
||||||
|
Loading…
Reference in New Issue
Block a user