|
|
(2 versioni intermedie di uno stesso utente non sono mostrate) |
Riga 1: |
Riga 1: |
− | Con alcune funzioni esterne della libreria standard C "''time.h''" è possibile conoscere la risoluzione di alcuni tipi di ''clock'' hardware.
| + | #REDIRECT [[Conoscere la risoluzione dei clock hardware con le risorse esterne dichiarate nel file header "time.h"]] |
− | | |
− | E' necessario avere installata nel proprio sistema e deve esere richiamata in gambas la libreria dinamica condivisa: "''libboost_date_time.so.1.54.0''"
| |
− | | |
− | | |
− | Mostriamo un semplice esempio:
| |
− | Library "libboost_date_time:1.54.0"
| |
− |
| |
− | Private Enum CLOCK_REALTIME = 0, CLOCK_MONOTONIC, CLOCK_PROCESS_CPUTIME_ID, CLOCK_THREAD_CPUTIME_ID, CLOCK_MONOTONIC_RAW,
| |
− | CLOCK_REALTIME_COARSE, CLOCK_MONOTONIC_COARSE, CLOCK_BOOTTIME, CLOCK_REALTIME_ALARM, CLOCK_BOOTTIME_ALARM
| |
− |
| |
− | Public Struct timespec
| |
− | tv_sec As Long <FONT Color=gray>' ''Secondi''</font>
| |
− | tv_nsec As Long <FONT Color=gray>' ''Nanosecondi''</font>
| |
− | End Struct
| |
− |
| |
− | <FONT Color=gray>' ''int clock_getres (clockid_t __clock_id, struct timespec *__res)''
| |
− | ' ''Get resolution of clock CLOCK_ID.''</font>
| |
− | Private Extern clock_getres(__clock_id As Integer, __res As Timespec) As Integer
| |
− |
| |
− |
| |
− | '''Public''' Sub Main()
| |
− |
| |
− | Dim spec As New Timespec
| |
− |
| |
− | clock_getres(CLOCK_REALTIME, spec)
| |
− | Print "CLOCK_REALTIME: sec. "; spec.tv_sec; " ns "; spec.tv_nsec
| |
− |
| |
− | clock_getres(CLOCK_MONOTONIC, spec)
| |
− | Print "CLOCK_MONOTONIC: sec. "; spec.tv_sec; " ns "; spec.tv_nsec
| |
− |
| |
− | clock_getres(CLOCK_MONOTONIC_RAW, spec)
| |
− | Print "CLOCK_MONOTONIC_RAW: sec. "; spec.tv_sec; " ns "; spec.tv_nsec
| |
− |
| |
− | clock_getres(CLOCK_PROCESS_CPUTIME_ID, spec)
| |
− | Print "CLOCK_PROCESS_CPUTIME_ID: sec. "; spec.tv_sec; " ns "; spec.tv_nsec
| |
− |
| |
− | clock_getres(CLOCK_THREAD_CPUTIME_ID, spec)
| |
− | Print "CLOCK_THREAD_CPUTIME_ID: sec. "; spec.tv_sec; " ns "; spec.tv_nsec
| |
− |
| |
− | '''End'''
| |
− | | |
− | | |
− | | |
− | | |
− | =Riferimenti=
| |
− | * http://man7.org/linux/man-pages/man2/clock_gettime.2.html
| |
− | * http://pubs.opengroup.org/onlinepubs/009695399/functions/clock_getres.html
| |