`
lizaochengwen
  • 浏览: 666505 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

详解iPhone中在多线程下使用CLLocationManager

 
阅读更多
详解iPhone中在多线程下使用CLLocationManager是本文要介绍的内容,主要是介绍在多线程下如何使用CLLocationManager,一起来看本文详细内容讲解。

如果是子线程中创建CLLocationManager,那么startUpdatingLocation后是无法定位的,任何代理函数都不会被调用,而且表面上还会有提示是否定位的MessageBox,一切看起来都正常,就是代理不会执行。

似乎定位的返回(调用代理)只能有主线程来调用,并且这个对象还必须是在主线程创建的。

做过以下实验:

1.子线程中:

self.locationManager = [[CLLocationManager alloc] init] autorelease]; 
locationManager.delegate = self; 
[locationManager startUpdatingLocation];
结果:不会有任何结果返回。

2.主线程中:

childThread.locationManager = [CLLocationManager alloc] init]; 
[childThread.locationManager release]; 
childThreadchildThread.locationManager.delegate = childThread;
在子线程中调用:

[locationManager startUpdatingLocation];
结果:代理函数会执行,但是是由主线程来调用的。也就是子线程启动定位,主线程返回结果。

小结:详解iPhone中在多线程下使用CLLocationManager的内容介绍完了,希望本文对你有所帮助!
原文地址:http://www.61ic.com/Mobile/iPhone/201108/36698.html
分享到:
评论

相关推荐

    java多线程详解

    在多线程环境中,线程安全问题主要源于对共享资源的并发访问。除了使用内置的同步机制外,开发者还可以采用原子操作、不可变对象和线程局部变量等策略来避免数据竞争条件。 总之,Java多线程机制为开发者提供了强大...

    详解Android中的多线程断点下载

    首先来看一下多线程下载的原理。多线程下载就是将同一个网络上的原始文件根据线程个数分成均等份,然后每个单独的线程下载对应的一部分,然后再将下载好的文件按照原始文件的顺序“拼接”起来就构 成了完整的文件了...

    在IntelliJ IDEA中多线程并发代码的调试方法详解

    在多线程并发编程中,调试是一件很复杂的事情,特别是在使用 IntelliJ IDEA 等集成开发环境时。今天,我们将详细介绍如何在 IntelliJ IDEA 中调试多线程并发代码。 在多线程并发编程中,多个线程可能会同时执行,这...

    Java多线程详解及示例

    在多线程环境下,死锁是指两个或多个线程相互等待对方释放资源,导致它们都无法继续执行。活锁则是指线程不断重试获取资源,但由于其他线程持有资源不释放,导致线程陷入无限循环的状态。避免死锁和活锁的关键在于...

    Java多线程详解(超详细)_狂神说笔记完整版_项目代码_适合小白随课程学习

    Java多线程详解 在Java编程中,多线程是一种重要的技术,它使得程序能够同时执行多个任务,提高系统的效率和响应性。本教程将详细讲解Java中的多线程概念,包括线程的创建、状态、同步以及高级主题,旨在帮助初学者...

    Windows多线程编程详解

    2. 使用BeginThread和EndThread函数:这是更简单的方法,适合于小型应用,但不推荐在复杂的多线程程序中使用。 三、线程同步 线程同步是防止多个线程同时访问同一资源造成数据不一致的重要手段。Windows提供了多种...

    多线程编程技术详解

    多线程技术在实际应用中非常重要 多线程编写本身并不难,它的难点在于使程序与程序之间进行相互协作 目标:学完这个系列教程后,大家就能掌握怎样去编写多线程程序 但是对于要在最短的时间内迅速掌握多线程编程...

    Delphi多线程详解

    1. 数据访问:在多线程环境中,访问共享数据时需确保线程安全,可能需要使用锁定(Locks)或信号量(Semaphores)。 2. 非线程安全组件:一些VCL组件不是线程安全的,如TListView,直接在非主线程中操作可能会引发...

    python多线程 实例 注释详解

    python 多线程 实例 注释详解

    Android多线程详解与Demo

    在Android应用开发中,多线程是至关重要的技术,它能帮助我们实现应用程序的高效运行,提高用户体验。本文将深入探讨Android多线程的使用,包括其原理、常见方法以及如何通过实例进行实践。 首先,我们需要理解...

    并发服务器-多线程服务器详解

    ### 并发服务器—多线程服务器详解 #### 一、引言 在现代软件开发中,特别是网络应用和服务的设计中,对并发处理能力的需求日益增长。为了满足高并发访问的需求,开发人员常采用多线程技术来构建高效、响应迅速的...

    java多线程设计模式详解(PDF及源码)

    本资源附带书中源代码可供参考) 多线程与并发处理是程序设计好坏优劣的重要课题,本书通过浅显易懂的文字与实例来介绍Java线程相关的设计模式概念,并且通过实际的Java程序范例和 UML图示来一一解说,书中在代码的...

    狂神说多线程详解.rar

    多线程是现代计算机编程中的一个重要概念,尤其在处理高性能计算、并发操作以及实时系统时,多线程技术显得尤为重要。它允许程序同时执行多个任务,提高系统的效率和响应速度。 一、多线程的基本概念 1. 线程:线程...

    C++多线程详解

    在C++编程中,多线程技术是一种强大的工具,它允许程序同时执行多个任务,从而提高了效率和响应性。本文将深入探讨C++中的多线程,并解释如何创建、管理和同步线程,以及讨论相关的重要概念。 首先,C++11引入了...

    多线程编程详解

    多线程在现代软件开发中广泛应用,特别是在需要并发处理任务的场景下,例如网络服务、图形用户界面和大数据处理。 一、程序、进程和线程的概念 1. **程序**:程序是一系列按照特定顺序排列的计算机指令,存储在...

    详细描述了Delphi多线程编程,超级简单易懂

    在多线程环境中,为了避免竞态条件和数据冲突,Delphi提供了多种同步机制。这些机制可以帮助开发者确保线程间的协调访问。 - **TCriticalSection**:最常用的同步对象之一,用于保护对共享资源的访问。使用示例: ...

    Java多线程编程详解

    ### Java多线程编程详解:深入理解与实践 #### 一、理解多线程机制 多线程,作为现代编程语言的重要特性之一,允许在单一应用程序内并发执行多个任务,从而极大提升了程序的效率和响应速度。在Java中,多线程的...

    java多线程设计模式详解.pdf

    7. 响应式编程模式:虽然更多地与现代Web开发相关,但响应式设计模式也可以在多线程编程中使用,特别是在涉及到事件驱动和消息传递的场景。 由于没有具体的内容可以参考,以上知识点仅是对标题和描述内容的合理推测...

    Java多线程编程深入详解.docx

    在本文中,我们将深入探讨Java多线程编程的基础知识和高级技术。 什么是多进程和多线程? 在计算机科学中,进程(Process)和线程(Thread)是两种不同的概念。进程是操作系统中的一种基本执行单元,具有独立的...

    csharp多线程示例(全)

    在多线程环境中,数据一致性是个关键问题。C#提供了多种同步机制: 1. `Mutex`:互斥锁,确保同一时间只有一个线程访问资源。 2. `Semaphore`:信号量,控制同时访问特定资源的线程数量。 3. `Monitor`:监视器,...

Global site tag (gtag.js) - Google Analytics