Anonymous | Login | 2025-01-16 19:24 UTC |
Main | My View | View Issues | Change Log | Docs |
Viewing Issue Simple Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||
ID | Category | Severity | Type | Date Submitted | Last Update | ||
0001346 | [1003.1(2016/18)/Issue7+TC2] Base Definitions and Headers | Comment | Enhancement Request | 2020-05-26 13:44 | 2024-06-11 09:08 | ||
Reporter | markh | View Status | public | ||||
Assigned To | |||||||
Priority | normal | Resolution | Accepted As Marked | ||||
Status | Closed | ||||||
Name | Mark Harris | ||||||
Organization | |||||||
User Reference | |||||||
Section | 1.7.1 | ||||||
Page Number | 8 | ||||||
Line Number | 236 | ||||||
Interp Status | --- | ||||||
Final Accepted Text | See Note: 0005157. | ||||||
Summary | 0001346: Require support for CLOCK_MONOTONIC | ||||||
Description |
CLOCK_MONOTONIC was introduced in Issue 6, but only as an optional feature. However many applications require the use of a clock that cannot have negative time jumps. A monotonic clock is not an obscure feature, and is widely available via non-POSIX interfaces. For example, C++ applications (since C++11) can rely on std::chrono::steady_clock, Java applications (since Java 7) can rely on System.nanoTime(), Python applications (since Python 3.5) can rely on time.monotonic(), macOS and iOS applications can rely on mach_absolute_time(), and Windows applications (since Windows 2000) can rely on QueryPerformanceCounter(). Many applications targeting POSIX just assume that CLOCK_MONOTONIC is available, but others that are trying to be more portable use checks that are difficult to get right and test, and may still fail on a system conforming to the latest revision of POSIX if CLOCK_MONOTONIC works with some interfaces (like clock_gettime()) but not others (like clock_nanosleep()). The addition of new interfaces such as pthread_cond_clockwait() (#1216) will make correct checking even more complex for applications that wish to use the new interfaces, but also support the possibility allowed by the standard that they may not be usable with CLOCK_MONOTONIC. A properly functioning monotonic clock is important and applications relying on Issue 8 should not be burdened with additional checks or fallbacks; they should be able to rely on a monotonic clock being available, as C++ applications, Java applications, Python applications, and macOS, iOS, and Windows applications have been able to do for years. |
||||||
Desired Action | For Issue 8, require support for the Monotonic Clock option, and require that CLOCK_MONOTONIC be supported by all standard interfaces that accept a clock id except clock_settime(). | ||||||
Tags | issue8 | ||||||
Attached Files | |||||||
|
Issue History | |||
Date Modified | Username | Field | Change |
2020-05-26 13:44 | markh | New Issue | |
2020-05-26 13:44 | markh | Name | => Mark Harris |
2020-05-26 13:44 | markh | Section | => 1.7.1 |
2020-05-26 13:44 | markh | Page Number | => 8 |
2020-05-26 13:44 | markh | Line Number | => 236 |
2020-12-03 17:21 | Don Cragun | Note Added: 0005157 | |
2020-12-03 17:23 | Don Cragun | Interp Status | => --- |
2020-12-03 17:23 | Don Cragun | Final Accepted Text | => See Note: 0005157. |
2020-12-03 17:23 | Don Cragun | Status | New => Resolved |
2020-12-03 17:23 | Don Cragun | Resolution | Open => Accepted As Marked |
2020-12-03 17:23 | Don Cragun | Tag Attached: issue8 | |
2020-12-03 17:31 | Don Cragun | Note Edited: 0005157 | |
2020-12-03 17:32 | rhansen | Note Edited: 0005157 | |
2020-12-03 17:33 | Don Cragun | Note Edited: 0005157 | |
2020-12-16 16:33 | geoffclare | Status | Resolved => Applied |
2024-06-11 09:08 | agadmin | Status | Applied => Closed |
Mantis 1.1.6[^] Copyright © 2000 - 2008 Mantis Group |