start method
启动循环隔离区
callback 循环执行的回调函数
params 传递给回调函数的参数
Implementation
Future<void> start(FgLoopCallback callback,
[Map<String, dynamic>? params]) async {
if (_isRunning) return;
_isRunning = true;
final receivePort = ReceivePort();
_receivePort = receivePort;
final message = <String, dynamic>{
'callback': callback,
'params': params,
'sendPort': receivePort.sendPort,
};
_setupMessageListener(receivePort);
try {
_isolate = await Isolate.spawn(_loopIsolateEntryPoint, message);
} catch (e) {
stop();
throw Exception('Error starting loop isolate: $e');
}
}