|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [UNIKRAFT/APPHELLOWORLD PATCH 2/6] Use nanosleep
Hi Simon,
This patch looks good.
Reviewed-by: Felipe Huici <felipe.huici@xxxxxxxxx>
On Mon, Sep 14, 2020 at 3:48 PM Simon Kuenzer <simon.kuenzer@xxxxxxxxx> wrote:
>
> Introduces `millisleep()` in order to enable shorter sleep times than in
> seconds.
>
> Signed-off-by: Simon Kuenzer <simon.kuenzer@xxxxxxxxx>
> ---
> main.c | 18 ++++++++++++++++--
> 1 file changed, 16 insertions(+), 2 deletions(-)
>
> diff --git a/main.c b/main.c
> index a0d6a73..4d4210e 100644
> --- a/main.c
> +++ b/main.c
> @@ -1,11 +1,13 @@
> #include <stdio.h>
> -#include <unistd.h>
> #include <uk/essentials.h>
>
> /* Import user configuration: */
> #include <uk/config.h>
>
> #if CONFIG_APPHELLOWORLD_SPINNER
> +#include <time.h>
> +#include <errno.h>
> +
> static const char *spinner[] = {
> ">))'> ",
> " >))'> ",
> @@ -20,6 +22,18 @@ static const char *spinner[] = {
> " <'((< ",
> "<'((< ",
> };
> +
> +static void millisleep(unsigned int millisec)
> +{
> + struct timespec ts;
> + int ret;
> +
> + ts.tv_sec = millisec / 1000;
> + ts.tv_nsec = (millisec % 1000) * 1000000;
> + do
> + ret = nanosleep(&ts, &ts);
> + while (ret && errno == EINTR);
> +}
> #endif /* CONFIG_APPHELLOWORLD_SPINNER */
>
> int main(int argc, char *argv[])
> @@ -43,7 +57,7 @@ int main(int argc, char *argv[])
> while (1) {
> i %= ARRAY_SIZE(spinner);
> printf("\r%s", spinner[i++]);
> - sleep(1);
> + millisleep(1000);
> }
> #endif /* CONFIG_APPHELLOWORLD_SPINNER */
> }
> --
> 2.20.1
>
>
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |