dispose method
Implementation
Future<void> dispose() async {
await disconnect();
try {
if (!_stateController.isClosed) {
await _stateController.close();
}
if (!_messageController.isClosed) {
await _messageController.close();
}
} catch (e) {
print('Error disposing WebSocketManager: $e');
}
}