From Jason Turner

[thread.lock.shared.locking]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmpzuia0d1t/{from.md → to.md} +14 -8
tmp/tmpzuia0d1t/{from.md → to.md} RENAMED
@@ -20,15 +20,15 @@ when an exception is required [[thread.req.exception]].
20
  bool try_lock();
21
  ```
22
 
23
  *Effects:* As if by `pm->try_lock_shared()`.
24
 
25
- *Returns:* The value returned by the call to `pm->try_lock_shared()`.
26
-
27
  *Ensures:* `owns == res`, where `res` is the value returned by the call
28
  to `pm->try_lock_shared()`.
29
 
 
 
30
  *Throws:* Any exception thrown by `pm->try_lock_shared()`.
31
  `system_error` when an exception is required [[thread.req.exception]].
32
 
33
  *Error conditions:*
34
 
@@ -38,18 +38,21 @@ to `pm->try_lock_shared()`.
38
  ``` cpp
39
  template<class Clock, class Duration>
40
  bool try_lock_until(const chrono::time_point<Clock, Duration>& abs_time);
41
  ```
42
 
 
 
 
43
  *Effects:* As if by `pm->try_lock_shared_until(abs_time)`.
44
 
45
- *Returns:* The value returned by the call to
46
- `pm->try_lock_shared_until(abs_time)`.
47
-
48
  *Ensures:* `owns == res`, where `res` is the value returned by the call
49
  to `pm->try_lock_shared_until(abs_time)`.
50
 
 
 
 
51
  *Throws:* Any exception thrown by `pm->try_lock_shared_until(abs_time)`.
52
  `system_error` when an exception is required [[thread.req.exception]].
53
 
54
  *Error conditions:*
55
 
@@ -59,18 +62,21 @@ to `pm->try_lock_shared_until(abs_time)`.
59
  ``` cpp
60
  template<class Rep, class Period>
61
  bool try_lock_for(const chrono::duration<Rep, Period>& rel_time);
62
  ```
63
 
 
 
 
64
  *Effects:* As if by `pm->try_lock_shared_for(rel_time)`.
65
 
66
- *Returns:* The value returned by the call to
67
- `pm->try_lock_shared_for(rel_time)`.
68
-
69
  *Ensures:* `owns == res`, where `res` is the value returned by the call
70
  to `pm->try_lock_shared_for(rel_time)`.
71
 
 
 
 
72
  *Throws:* Any exception thrown by `pm->try_lock_shared_for(rel_time)`.
73
  `system_error` when an exception is required [[thread.req.exception]].
74
 
75
  *Error conditions:*
76
 
 
20
  bool try_lock();
21
  ```
22
 
23
  *Effects:* As if by `pm->try_lock_shared()`.
24
 
 
 
25
  *Ensures:* `owns == res`, where `res` is the value returned by the call
26
  to `pm->try_lock_shared()`.
27
 
28
+ *Returns:* The value returned by the call to `pm->try_lock_shared()`.
29
+
30
  *Throws:* Any exception thrown by `pm->try_lock_shared()`.
31
  `system_error` when an exception is required [[thread.req.exception]].
32
 
33
  *Error conditions:*
34
 
 
38
  ``` cpp
39
  template<class Clock, class Duration>
40
  bool try_lock_until(const chrono::time_point<Clock, Duration>& abs_time);
41
  ```
42
 
43
+ *Preconditions:* `Mutex` meets the *Cpp17SharedTimedLockable*
44
+ requirements [[thread.req.lockable.shared.timed]].
45
+
46
  *Effects:* As if by `pm->try_lock_shared_until(abs_time)`.
47
 
 
 
 
48
  *Ensures:* `owns == res`, where `res` is the value returned by the call
49
  to `pm->try_lock_shared_until(abs_time)`.
50
 
51
+ *Returns:* The value returned by the call to
52
+ `pm->try_lock_shared_until(abs_time)`.
53
+
54
  *Throws:* Any exception thrown by `pm->try_lock_shared_until(abs_time)`.
55
  `system_error` when an exception is required [[thread.req.exception]].
56
 
57
  *Error conditions:*
58
 
 
62
  ``` cpp
63
  template<class Rep, class Period>
64
  bool try_lock_for(const chrono::duration<Rep, Period>& rel_time);
65
  ```
66
 
67
+ *Preconditions:* `Mutex` meets the *Cpp17SharedTimedLockable*
68
+ requirements [[thread.req.lockable.shared.timed]].
69
+
70
  *Effects:* As if by `pm->try_lock_shared_for(rel_time)`.
71
 
 
 
 
72
  *Ensures:* `owns == res`, where `res` is the value returned by the call
73
  to `pm->try_lock_shared_for(rel_time)`.
74
 
75
+ *Returns:* The value returned by the call to
76
+ `pm->try_lock_shared_for(rel_time)`.
77
+
78
  *Throws:* Any exception thrown by `pm->try_lock_shared_for(rel_time)`.
79
  `system_error` when an exception is required [[thread.req.exception]].
80
 
81
  *Error conditions:*
82