setitimer реализован с помощью timer_create / timer_settime - PullRequest
0 голосов
/ 30 сентября 2018

Функциональность таймера с расширениями Linux, такими как CLOCK_PROCESS_CPUTIME_ID, включает в себя расширенный набор setitimer?

Другими словами, могут ли timer_create и timer_settime в Linux использоваться для реализации setitimer?

На первый взгляд кажется, что это можно сделать простым переводом между struct itimerval / struct itimerspec и установкой правильного сигнала в аргументе struct sigevent в сочетании с правильными часами.

Однако, часть часов кажется проблематичной.CLOCK_MONOTONIC выглядит как timer_settime аналог setitimer s ITIMER_REAL и CLOCK_PROCESS_CPUTIME_ID как аналог ITIMER_PROF.Это было бы правильно?Какими будут часы для ITIMER_VIRTUAL?

Следующее примечание в спецификации POSIX setitimer :

ИСПОЛЬЗОВАНИЕ ПРИЛОЖЕНИЯ Приложения должны использовать timer_gettime ()и функции timer_settime () вместо устаревших функций getitimer () и setitimer () соответственно.

также настоятельно рекомендует полностью заменить setitimer на timer_create / timer_settime.

...