다트는 async/await pattern in .net과 원격으로 비슷한 것을 가지고 있습니까?다트의 비동기/대기 패턴?
예를 들어 소켓 1을 열고 응답 1을 기다리고 응답 2를 기다리는 응답을 기다리는 응답을 기다리는 응답을 기다리는 것은 비동기입니다. 모든 약.
여기 그것을하는 하나 개의 방법 :
Socket _socket;
Socket.connect(_host, _port).then(
(Socket socket) {
print("socket open!");
_socket = socket;
socket.transform(new StringDecoder()).listen(ProcessResponse);
socket.write("1");
});
void ProcessResponse(String response)
{
print("response received!");
if (response == "1") _socket.write("2");
if (response == "2") _socket.write("3");
if (response == "3") _socket.write("4");
// ... etc ..
}
내가 동기화를보고 이해하기 매우 쉽다
socket.write("1");
response1 = await socket.getResponse();
socket.write("2");
response2 = await socket.getResponse();
socket.write("3");
response3 = await socket.getResponse();
// etc.
즉, 쓰기 같은 코드를 쓸 수 싶지만, 실제로는 비동기 적으로 실행됩니다.
아이디어가 있으십니까?
옙, 중복. 답은 "아니오"처럼 보입니다. : ( – Max
이제 답이'예'입니다 :-) –