Xamarin.ios 有没有理由不将我的CLLocationManager放入全局变量?

Xamarin.ios 有没有理由不将我的CLLocationManager放入全局变量?,xamarin.ios,global-variables,Xamarin.ios,Global Variables,我正在构建的应用程序中几乎所有的ViewController都需要CLLocationManager。是否有任何理由不将其放入全局变量(通过静态类)?另一种方法似乎是为每个viewcontroller单独设置它(浪费),或者将它传递给每个viewcontroller(混乱) 我通常设置一个共享实例,并将其命名为……“LocationManager”。您可以在此处签出旧版本: Xamarin移动API也是另一个很好的同步项目。目标是创建一个共享库,将GPS、加速度计、触点等的通用接口抽象出来:

我正在构建的应用程序中几乎所有的ViewController都需要CLLocationManager。是否有任何理由不将其放入全局变量(通过静态类)?另一种方法似乎是为每个viewcontroller单独设置它(浪费),或者将它传递给每个viewcontroller(混乱)

我通常设置一个共享实例,并将其命名为……“LocationManager”。您可以在此处签出旧版本:

Xamarin移动API也是另一个很好的同步项目。目标是创建一个共享库,将GPS、加速度计、触点等的通用接口抽象出来:

更新:为了回答您的问题,我能想到的不创建共享实例实现的唯一原因是您是否计划从一堆不同的线程访问它。为了在我的实现中解决这个问题,我只需创建线程安全的成员,并对这些成员使用线程安全的访问模式