sendMessage method

void sendMessage([
  1. MessageToIsolate? message
])

Implementation

void sendMessage([MessageToIsolate? message]) {
  if (_isClosed) {
    return;
  }
  if (_toIsolatePort != null) {
    while (_defferedMessages.isNotEmpty) {
      _toIsolatePort?.send(_defferedMessages.removeFirst());
    }
    if (message != null) {
      _toIsolatePort?.send(message);
    }
  } else {
    if (message != null) {
      _defferedMessages.add(message);
    }
    Future.delayed(Duration(milliseconds: 50)).then((value) {
      sendMessage();
    });
  }
}