gpt4 book ai didi

objective-c - 线程安全的静态变量 objective-c

转载 作者:太空狗 更新时间:2023-10-30 03:28:02 27 4
gpt4 key购买 nike

在 Objective-C 中有没有一种方法可以定义线程安全的静态 int?

例如,如果我有一个名为 Session 的类,它有:

static unsigned int session_id = 1000;

- (int) generateSessionID{
return session_id++;
}

我正在从不同的线程构造 session 对象,每个 session 对象应该有一个唯一的ID。

最佳答案

我认为你最好使用 atomic operations修改 session_idprevious question讨论 OS X 的原子递增/递减操作,以及 this page讨论 OSAtomic 头文件。整数的原子操作很容易得到硬件支持,可能比使用锁定结构快得多。

关于objective-c - 线程安全的静态变量 objective-c ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4039225/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com