ios - Swift: Realm accessed from incorrect thread -


i pass previous view controller. want show data save in other view controller.

    override func prepareforsegue(segue: uistoryboardsegue, sender: anyobject?) {     if (segue.identifier == "beacons") {           let nav = segue.destinationviewcontroller as! uinavigationcontroller         let svc = nav.topviewcontroller as! beaconcharacteristicviewcontroller         svc.selectedlist = sender as! beacons       } 

and

      var selectedlist : beacons! 

and code error reason.

i don't use primary key or have use it.

    func loadproperties(){        let beacons = selectedlist        let priority = dispatch_queue_priority_default        dispatch_async(dispatch_get_global_queue(priority, 0)) {          do{             try uirealm.write({ () -> void in                  beacons.uuid = self.beaconuuid.text!                 print("uuid = \(beacons.uuid)")                  beacons.major = self.beaconmajor.text!                 print("uuid = \(beacons.uuid)")                  beacons.minor = self.beaonminor.text!                 print("uuid = \(beacons.uuid)")                  uirealm.add(beacons, update: true)                  }             )         } catch {             print("error")         }         }     } 

error

       terminating app due uncaught exception 'rlmexception', reason: 'realm accessed incorrect thread.' 

thank :)))

based on code try uirealm.write, seems call realm instance of thread in main thread (dispatch block). try create instance.

    do{         // create new instance         let uirealm = try! realm()          try uirealm.write({ () -> void in              beacons.uuid = self.beaconuuid.text!             print("uuid = \(beacons.uuid)")              beacons.major = self.beaconmajor.text!             print("uuid = \(beacons.uuid)")              beacons.minor = self.beaonminor.text!             print("uuid = \(beacons.uuid)")              uirealm.add(beacons, update: true)              }         )     } catch {         print("error")     } 

Comments