¿Cómo asegurarse de ejecutar algún código en el mismo hilo de fondo?

Estoy usando el reino en mi proyecto iOS Swift. La búsqueda implica filtros complejos para un gran conjunto de datos. Así que estoy buscando registros en el hilo de fondo.

Pero el reino solo se puede usar desde el mismo hilo en el que se creó el Reino. Estoy guardando una referencia de resultados que obtuve después de buscar Realm en el hilo de fondo. Este objeto solo se puede acceder desde el mismo hilo posterior

¿Cómo puedo asegurarme de enviar el código en un momento diferente al mismo hilo?

Intenté a continuación según lo sugerido para resolver el problema, pero no funcionó

let realmQueue = DispatchQueue(label: "realm")
    var orginalThread:Thread?

    override func viewDidLoad() {
        super.viewDidLoad()

        realmQueue.async {
            self.orginalThread = Thread.current
        }

        let deadlineTime = DispatchTime.now() + .seconds(2)
        DispatchQueue.main.asyncAfter(deadline: deadlineTime) {
            self.realmQueue.async {
                print("realm queue after some time")

                if self.orginalThread == Thread.current {
                    print("same thread")
                }else {
                    print("other thread")
                }
            }
        }
    }

La salida es

realm queue after some time

other thread

Respuestas a la pregunta(2)

Su respuesta a la pregunta