전체 프로세스는 클로저와 관련이 없습니다... 변수가 확실히 값을 가지므로 실제로 물음표 대신 느낌표를 사용할 수 있으므로 생성할 때 nil을 할당할 필요가 없습니다. 그것을 얻을 때 수동으로 압축을 풀 필요가 없습니다. 글쎄, 나는 당신의 코드에 있는 작은 문제에 대해 이야기하고 있습니다. 질문하고 싶은 이유는 위에 언급되어 있습니다. 콜백을 만들고 connectHost에 이 콜백을 걸 수 있습니다. 이것은 콜백을 전달하기 위해 각 레이어에 구멍을 열게 될 뿐입니다... 물론 Github에는 Async라는 프로젝트가 있는데, 그 구현을 주의 깊게 살펴보지 않았기 때문입니다. 여기서 과시하기가 어렵습니다.
귀하의 이번 일은 폐쇄와 관련이 없는 것 같습니다
Closure
다음 답변
유형의 압축을 강제로 풀었습니다.이 충돌의 문제는 분명합니다. 값이
nil
Optional
인이유
connectToHost()
은 이 줄이 실행된 후return registerRes!
그러나 현재 연결이 진행 중이며 아직 콜백되지 않았습니다.
func xmppStreamDidRegister(sender: XMPPStream!)
방법초기화 중
registerRes
값은 여전히 nil
입니다.전체 프로세스는 클로저와 관련이 없습니다... 변수가 확실히 값을 가지므로 실제로 물음표 대신 느낌표를 사용할 수 있으므로 생성할 때 nil을 할당할 필요가 없습니다. 그것을 얻을 때 수동으로 압축을 풀 필요가 없습니다. 글쎄, 나는 당신의 코드에 있는 작은 문제에 대해 이야기하고 있습니다. 질문하고 싶은 이유는 위에 언급되어 있습니다. 콜백을 만들고 connectHost에 이 콜백을 걸 수 있습니다. 이것은 콜백을 전달하기 위해 각 레이어에 구멍을 열게 될 뿐입니다... 물론 Github에는 Async라는 프로젝트가 있는데, 그 구현을 주의 깊게 살펴보지 않았기 때문입니다. 여기서 과시하기가 어렵습니다.