2016-11-27 2 views
-1

GCDキュー内の同期操作以外で使用する変数を返す方法を見つけるのが難しいです。GCD同期操作で後で使用する変数を返す - Swift 3

let queue = DispatchQueue(label: "com.yourapp.queue", qos: DispatchQoS.userInitiated) 

queue.sync(userLocation: CLLocation) -> CLLocation { 
    let userLocation = mapView.myLocation 

    return userLocation 
} 

私はこれが構文の仕組みではないことを知っていますが、これがどのように機能するかについての考えはありますか?

答えて

0

userLocationqueue.syncの外に移動します。

また
var userLocation: CLLocation? 
queue.sync { 
    userLocation = mapView.myLocation 
} 

var myUserLocation: CLLocation? 

func setLocation(userLocation: CLLocation) { 
    myUserLocation = userLocation 
} 

queue.sync { 
    self.setLocation(userLocation: mapView.myLocation) 
} 

あなたがが、より詳細な答えをご希望の場合、私はあなたのコードの詳細を参照する必要があります。例えばmapViewはどこですか?どのようにuserLocationを使用しますか。しかし、あなたはそれの要点を得ることを願っています。

関連する問題