2011-12-01 24 views
6

Bir ACAccount örneğini iş parçacıkları arasında paylaşabilir miyim? Özellikle farklı NSOperationQueue örnekleri tarafından kullanılan birden çok TWRequest nesnesi oluşturmak istiyorum. Bu TWRequest nesneleri, tek bir ACAccount örneğini paylaşacak. Bu güvenli mi?ACAccount iş parçacığı güvenli mi?

Teşekkürler.

+0

Konuştuğunuz şey için daha fazla bağlam vermek zorundasınız. ACAccount nedir? 'TWRequest's? Sorunuzu cevaplamak için daha fazla bilgi gereklidir. Bu sınıflar bir çerçevenin parçası mı? –

+1

Bu, iOS'taki Twitter çerçevesi içindir. 5. Etiketlerde açıkça işaretlenmiştir. – adib

cevap

3

"Hayır" diyorum. Öncelikle, ACAccount, Apple'ın "Thread Safe" list üzerinde görünmez. İkinci olarak, bu sınıflardan herhangi biri için referansta açık iplik güvenliği söz konusu değildir. Üçüncü olarak, TWRequest'in bir çalışma döngüsünde (genellikle ana iş parçacığı) kullanılmak üzere tasarlanmış NSURLConnection üzerine kurulu göründüğünü görüyorum. Bu sınıfların birden fazla iş parçacığının eşzamanlı kullanımı için güvenli olduğunu belirtmek için hiçbir şey göremiyorum. En iyi ihtimalle, bir iş parçacığı ele geçirme yaklaşımı almalısınız (örneğin, her bir iş parçacığı bu nesnelerin kendi kopyalarını getirir/oluşturur ve bunları iş parçacıkları arasında geçirmemelidir.)

TWRequest kooperatif/runloop tabanlı işlem için tasarlandığından, I arka plan iş parçacığı üzerinde bir şeyler yapmak için gerek gerek yok bir neden göremiyorum, FWIW. Yani, evet, evet, evet. "Hayır" derdim.

İlgili konular