(&self)
| 326 | |
| 327 | impl MyState { |
| 328 | fn lock(&self) -> impl Drop + '_ { |
| 329 | let state = self.lock.lock().unwrap(); |
| 330 | let mut state = self |
| 331 | .waiters |
| 332 | .wait_while(state, |cnt| *cnt >= MAX_CONCURRENT_POOLING) |
| 333 | .unwrap(); |
| 334 | *state += 1; |
| 335 | LockGuard { state: self } |
| 336 | } |
| 337 | } |
| 338 | |
| 339 | struct LockGuard<'a> { |