()
| 39 | } |
| 40 | |
| 41 | List<Runnable> expired() { |
| 42 | long time = clock.nanoTime(); |
| 43 | List<Runnable> result = new ArrayList<>(); |
| 44 | Iterator<Task> it = tasks.iterator(); |
| 45 | Task item; |
| 46 | while (it.hasNext() && (item = it.next()).time <= time) { |
| 47 | result.add(item.task); |
| 48 | it.remove(); |
| 49 | } |
| 50 | return result; |
| 51 | } |
| 52 | |
| 53 | class Task implements Cancellable { |
| 54 | final Runnable task; |