anchor.diff:      while (i < tasks.length) {
         var task = tasks[i];
         var j = 0;
  -      while (_workers[j]!.isTooBusy) {
  +      while (_workers[j].isTooBusy) {
           j++;
           if (j >= count) {
             await Future<Null>.delayed(const Duration(milliseconds: 10));
             j = 0;
           }
         }
  -      futures[i] = _workers[j]!.send(task);
  +      futures[i] = _workers[j].send(task);
         i++;
         j++;
       }
  
positive.code: /// It's recommended that [count] is less or equal to the number of CPU cores.
  class IsolateWorkerPool<T, R> {
    final int count;
    final List<IsolateWorker<T, R>?> _workers;
  
    bool _initialized = false;
  
    IsolateWorkerPool({int count = 4})
        : count = count,
          _workers = List.filled(count, null);
  
    Future init() async {
      for (var i = 0; i < count; i++) {
        var worker = IsolateWorker<T, R>();
        await worker.init();
        _workers[i] = worker;
      }
      _initialized = true;
    }
  
    void destroy() {
      _workers.forEach((w) => w!.destroy());
    }
  
    static final Random _random = Random();
  
negative.code:     if (!_initialized) {
        throw StateError('Must run init() first before using pool.');
      }
      var worker = _workers[_random.nextInt(count)];
  
      while (worker.isTooBusy) {
        await Future<Null>.delayed(const Duration(milliseconds: 10));
  