url
이라는 String 속성으로 Realm Object (File이라고 부름)가 있습니다. url
에 대한 참조를 포함하는 Alamofire DownloadRequest.DownloadFileDestination
블록을 만들었으므로이 파일을 다운로드 할 수 있습니다. 그러나이 블록은 백그라운드 스레드에서 실행되므로 Realm은 예외를 발생시킵니다. 실제로 전체 Realm 또는 File 객체 전체에 액세스 할 필요는 없습니다. 속성 url
만 필요합니다. 따라서 Realm에서 File 객체를 백그라운드 스레드로 열려고 할 이유가 없습니다.다른 개체로 전달하기 위해 값을 복사하는 방법
이 문자열 (또는 다른 유형의 속성)을 Realm 객체 밖으로 복사하여 다른 스레드로 전달하는 올바른 방법은 무엇입니까?
현재의 솔루션은 작동하지 않지만 매우 우아하지 않은 것처럼 보입니다.
let url = "\(object.url)"
이 질문에
는 코드의 특정 블록에 관련이 없습니다 - 더 개념적인 질문이다.
유형에 대해 자세히 알려주십시오. 'url' Swift의'String' 유형입니까? 그렇다면 그것은 값 유형이므로 "참조"가 있다는 것은 무엇을 의미합니까? –