InnerIsolatedBloc<Event, State> constructor

InnerIsolatedBloc<Event, State>(
  1. CreateBloc<Event, State> _createBloc, {
  2. String? isolateName,
})

Implementation

InnerIsolatedBloc(this._createBloc, {String? isolateName}) : _state = _createBloc().state {
  _blocMainIsolateLogic = isolatesDispatcher.isolate(isolateName: isolateName);
  _fromIsolatePort.listen((message) {
    if (message is SendPortMessageToMain) {
      _toIsolatePort = message.sendPort;
    }
    if (message is State) {
      _state = message;
      _stateController.add(message);
    }
  });
  _blocMainIsolateLogic.sendMessage(CreateBlocMessageToIsolate(
    _createBloc,
    _fromIsolatePort.sendPort,
    _key,
  ));
}