相关疑难解决方法(0)

原子和非原子属性之间有什么区别?

财产申报中的含义atomicnonatomic含义是什么?

@property(nonatomic, retain) UITextField *userName;
@property(atomic, retain) UITextField *userName;
@property(retain) UITextField *userName;
Run Code Online (Sandbox Code Playgroud)

这三者之间的运作区别是什么?

properties atomic objective-c ios nonatomic

1828
推荐指数
20
解决办法
47万
查看次数

968
推荐指数
27
解决办法
19万
查看次数

锁定,互斥,信号量...有什么区别?

我听说过这些与并发编程有关的词,但它们之间的区别是什么?

concurrency mutex semaphore locking

395
推荐指数
9
解决办法
21万
查看次数

swift中`let`和`var`有什么区别?

是什么区别let,并var在苹果的雨燕语言?

根据我的理解,它是一种编译语言,但它不会在编译时检查类型.这让我感到困惑.编译器如何知道类型错误?如果编译器没有检查类型,那么生产环境是不是有问题?

swift

302
推荐指数
8
解决办法
16万
查看次数

可变对象与不可变对象

我试图让我的头围绕可变对象和不可变对象.使用可变对象会导致很多不良操作(例如,从方法中返回一个字符串数组),但我无法理解其中的负面影响.使用可变对象的最佳做法是什么?你应该尽可能地避开它们吗?

oop mutable immutability

166
推荐指数
6
解决办法
8万
查看次数

108
推荐指数
3
解决办法
4万
查看次数

Swift中的不可变/可变集合

我指的是Apple的Swift编程指南,用于理解用Swift语言创建Mutable/immutable对象(Array,Dictionary,Sets,Data).但我无法理解如何在Swift中创建不可变的集合.

我想在Objective-C中看到Swift中的等价物

不可变阵列

NSArray *imArray = [[NSArray alloc]initWithObjects:@"First",@"Second",@"Third",nil];
Run Code Online (Sandbox Code Playgroud)

可变阵列

NSMutableArray *mArray = [[NSMutableArray alloc]initWithObjects:@"First",@"Second",@"Third",nil];
[mArray addObject:@"Fourth"];
Run Code Online (Sandbox Code Playgroud)

不变字典

NSDictionary *imDictionary = [[NSDictionary alloc] initWithObjectsAndKeys:@"Value1", @"Key1", @"Value2", @"Key2", nil];
Run Code Online (Sandbox Code Playgroud)

可变字典

NSMutableDictionary *mDictionary = [[NSMutableDictionary alloc]initWithObjectsAndKeys:@"Value1", @"Key1", @"Value2", @"Key2", nil];
[mDictionary setObject:@"Value3" forKey:@"Key3"];
Run Code Online (Sandbox Code Playgroud)

objective-c mutable immutability ios swift

83
推荐指数
4
解决办法
8万
查看次数

在并发编程的上下文中,"数据竞争"和"竞争条件"实际上是相同的

我经常发现这些术语在并发编程的上下文中使用.它们是相同的还是不同的?

language-agnostic concurrency multithreading data-race

82
推荐指数
5
解决办法
2万
查看次数

Objective-C中的同步和异步调用与多线程之间有什么区别?

在最长的时间里,我认为异步是在后台线程上运行某些东西的同义词,而同步意味着在主线程上(阻止UI更新和交互).我明白,不在主线程上运行昂贵的操作是因为它不允许在主线程被占用时发生UI操作,但为什么同步麻烦?

但是,我注意到你可以在主线程上进行异步调用,在后台线程上进行同步调用.

我总是听到人们说不要同步或在主线程上使用昂贵的调用,因为它会阻止用户的UI.这两个不同的问题我应该确保我不这样做吗?有什么区别?

multithreading asynchronous objective-c grand-central-dispatch ios

53
推荐指数
4
解决办法
7万
查看次数

OSX是POSIX OS吗?

什么使操作系统成为POSIX系统?所有版本的Linux都是POSIX,对吧?OSX怎么样?

linux macos operating-system posix

52
推荐指数
3
解决办法
3万
查看次数