equal
deleted
inserted
replaced
18 return __sync_val_compare_and_swap(atomicvar, compared, exchange); |
18 return __sync_val_compare_and_swap(atomicvar, compared, exchange); |
19 } |
19 } |
20 |
20 |
21 void PLC_GetTime(IEC_TIME *CURRENT_TIME) |
21 void PLC_GetTime(IEC_TIME *CURRENT_TIME) |
22 { |
22 { |
23 clock_gettime(CLOCK_REALTIME, CURRENT_TIME); |
23 struct timespec tmp; |
|
24 clock_gettime(CLOCK_REALTIME, &tmp); |
|
25 CURRENT_TIME->tv_sec = tmp.tv_sec; |
|
26 CURRENT_TIME->tv_nsec = tmp.tv_nsec; |
24 } |
27 } |
25 |
28 |
26 void PLC_timer_notify(sigval_t val) |
29 void PLC_timer_notify(sigval_t val) |
27 { |
30 { |
28 PLC_GetTime(&__CURRENT_TIME); |
31 PLC_GetTime(&__CURRENT_TIME); |