message: Remove `work_queue` demonstration code
diff: @@ -122,46 +122,3 @@ impl<T> Drop for JobHandle<T> {
  self.queue.complete_job()
  }
  }
  -
  -// *** Demonstration ***
  -
  -type DemoJob = (&'static str, usize);
  -
  -async fn process_job(job: DemoJob) -> Vec<DemoJob> {
  - tokio::time::sleep(Duration::from_millis(250)).await;
  -
  - let (tag, n) = job;
  -
  - if n == 0 {
  - Vec::new()
  - } else {
  - vec![(tag, n - 1), (tag, n - 1)]
  - }
  -}
  -
  -async fn worker(id: usize, q: Arc<WorkQueue<DemoJob>>) {
  - println!("worker {}: init", id);
  -
  - while let Some(job) = q.next_job().await {
  - println!("worker {}: start job {:?}", id, job.inner());
  - for new_job in process_job(job.inner().clone()).await {
  - q.push_job(new_job);
  - }
  - println!("worker {}: finish job {:?}", id, job.inner());
  - }
  -
  - println!("worker {}: shutting down", id);
  -}
  -
  -const WORKER_COUNT: usize = 3;
  -
  -#[tokio::main]
  -async fn main() {
  - let q = Arc::new(WorkQueue::default());
  - q.push_job(("A", 3));
  -
  - let workers: FuturesUnordered<_> = (0..WORKER_COUNT).map(|id| worker(id, q.clone())).collect();
  -
  - // Wait for all workers to finish.
  - workers.for_each(|_| async move {}).await;
  -}
  