destroy method
Implementation
@override
Future<void> destroy() async {
try {
_sendPort.send('stop');
await _exitCompleter.future.timeout(const Duration(seconds: 5));
} on TimeoutException {
_isolate?.kill(priority: Isolate.immediate);
} finally {
_cleanUp();
}
}