132 * <em>Discussion:</em> |
132 * <em>Discussion:</em> |
133 * Because of the one-way nature of invalidation, once a switch point begins |
133 * Because of the one-way nature of invalidation, once a switch point begins |
134 * to return true for {@code hasBeenInvalidated}, |
134 * to return true for {@code hasBeenInvalidated}, |
135 * it will always do so in the future. |
135 * it will always do so in the future. |
136 * On the other hand, a valid switch point visible to other threads may |
136 * On the other hand, a valid switch point visible to other threads may |
137 * invalidated at any moment, due to a request by another thread. |
137 * be invalidated at any moment, due to a request by another thread. |
138 * <p style="font-size:smaller;"> |
138 * <p style="font-size:smaller;"> |
139 * Since invalidation is a global and immediate operation, |
139 * Since invalidation is a global and immediate operation, |
140 * the execution of this query, on a valid switchpoint, |
140 * the execution of this query, on a valid switchpoint, |
141 * must be internally sequenced with any |
141 * must be internally sequenced with any |
142 * other threads that could cause invalidation. |
142 * other threads that could cause invalidation. |