반응형 DART1 호출 메소드와 응답 콜백이 분리돼 있을 때 호출 메소드를 통해 결과를 받는 방법 Dart로 소켓 통신을 구현하는 과정에서 데이터를 전송하는 메소드를 통해 응답을 받고 싶지만 소켓 인스턴스가 별도의 콜백으로 응답을 주는 터라 그럴 수가 없었다. 방법이 있지 않을까 해서 찾아보니 Completer를 이용해서 가능했다. class MyClass { Socket? socket; final Completer _completer = Completer(); Future connect(Sring host, int port) async { socket = await Socket.connect(host, port); socket?.listen( (data) { _completer.complete(data);// 응답을 기다리고 있는 호출자에게 응답 데이터 전달 }, onError: (error) { .. 2023. 9. 20. 이전 1 다음