Skip to content

Commit fd379db

Browse files
committed
unix/modtime: Implement sleep_ms(), sleep_us().
1 parent 096d1e4 commit fd379db

File tree

2 files changed

+16
-0
lines changed

2 files changed

+16
-0
lines changed

unix/modtime.c

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,10 +97,24 @@ STATIC mp_obj_t mod_time_sleep(mp_obj_t arg) {
9797
}
9898
STATIC MP_DEFINE_CONST_FUN_OBJ_1(mod_time_sleep_obj, mod_time_sleep);
9999

100+
STATIC mp_obj_t mod_time_sleep_ms(mp_obj_t arg) {
101+
usleep(mp_obj_get_int(arg) * 1000);
102+
return mp_const_none;
103+
}
104+
STATIC MP_DEFINE_CONST_FUN_OBJ_1(mod_time_sleep_ms_obj, mod_time_sleep_ms);
105+
106+
STATIC mp_obj_t mod_time_sleep_us(mp_obj_t arg) {
107+
usleep(mp_obj_get_int(arg));
108+
return mp_const_none;
109+
}
110+
STATIC MP_DEFINE_CONST_FUN_OBJ_1(mod_time_sleep_us_obj, mod_time_sleep_us);
111+
100112
STATIC const mp_map_elem_t mp_module_time_globals_table[] = {
101113
{ MP_OBJ_NEW_QSTR(MP_QSTR___name__), MP_OBJ_NEW_QSTR(MP_QSTR_utime) },
102114
{ MP_OBJ_NEW_QSTR(MP_QSTR_clock), (mp_obj_t)&mod_time_clock_obj },
103115
{ MP_OBJ_NEW_QSTR(MP_QSTR_sleep), (mp_obj_t)&mod_time_sleep_obj },
116+
{ MP_OBJ_NEW_QSTR(MP_QSTR_sleep_ms), (mp_obj_t)&mod_time_sleep_ms_obj },
117+
{ MP_OBJ_NEW_QSTR(MP_QSTR_sleep_us), (mp_obj_t)&mod_time_sleep_us_obj },
104118
{ MP_OBJ_NEW_QSTR(MP_QSTR_time), (mp_obj_t)&mod_time_time_obj },
105119
};
106120

unix/qstrdefsport.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,8 @@ Q(utime)
6060
Q(time)
6161
Q(clock)
6262
Q(sleep)
63+
Q(sleep_ms)
64+
Q(sleep_us)
6365

6466
Q(socket)
6567
Q(sockaddr_in)

0 commit comments

Comments
 (0)