2

最新の SDK を使用して iOS 5.0 以降のアプリを開発しています。

私はこのコードを持っています:

@interface ServerManager()
{
    NSCondition* statusLock;

[ ... ]

}

@end

@implementation ServerManager

[ ... ]

- (void)setStatus:(ServerStatus)newStatus
{
    [statusLock lock];

    status = newStatus;

    [statusLock unlock];
}

- (void)setStatus:(ServerStatus)newStatusこれで実装を変更すると:

- (void)setStatus:(ServerStatus)newStatus
{
    @synchronized(statusLock)
    {
        status = newStatus;
    }
}

私も同じことをしていますか?

これは私が NSThread を使用する最初の作業であり、iOS でロックがどのように機能するかわかりません。

4

1 に答える 1