In examples/network_example.dart, the ElectrumClient.dispose() call is placed inside the try block. This means that if an error occurs during sync or any other operation, control flow jumps out of the try block and the client is never disposed.
As a result, the example can leave behind open connections or native handles, which can cause memory or resource leaks especially in long-running processes