init()
NSThread
object.
初期化されたNSThread
オブジェクトを返します。
init(target: Any, selector: Selector, object: Any?)
NSThread
object initialized with the given arguments.
与えられた引数それらで初期化されたNSThread
オブジェクトを返します。
Availability 有効性
Technology
class Thread : NSObject
Use this class when you want to have an Objective-C method run in its own thread of execution. Threads are especially useful when you need to perform a lengthy task, but don’t want it to block the execution of the rest of the application. In particular, you can use threads to avoid blocking the main thread of the application, which handles user interface and event-related actions. Threads can also be used to divide a large job into several smaller jobs, which can lead to performance increases on multi-core computers. このクラスをあなたがObjective-Cメソッドをそれ独自の遂行スレッドにおいて動作してもらいたい場合に使ってください。スレッドはとりわけ役に立つのは、あなたがある非常に長いタスクを実行する必要がある、しかしそのアプリケーションの残りの遂行を遮断することをそれに望まない場合です。特に、あなたはこれらスレッドを、アプリケーションのユーザインターフェイスおよびイベント関連動作を取り扱うメインスレッドの遮断を防ぐために使用できます。スレッドはまた、ある大きなジョブをいくつかのより小さいジョブへと分割するために使用されることができます、それはマルチコアコンピュータでの性能の増大に通じます。
The Thread
class supports semantics similar to those of Operation
for monitoring the runtime condition of a thread. You can use these semantics to cancel the execution of a thread or determine if the thread is still executing or has finished its task. Canceling a thread requires support from your thread code; see the description for cancel()
for more information.
Thread
クラスは、あるスレッドの実行時条件の監視のためのOperation
のそれらに似た意味論をサポートします。あなたはそれら意味論を使用して、あるスレッドの遂行を取り消したり、そのスレッドがまだ遂行中かまたはそれのタスクを終了したかを決定できます。スレッドの取り消しは、あなたのスレッドコードからのサポートが必須です;cancel()
をさらなる情報として見てください。
You can subclass Thread
and override the main()
method to implement your thread’s main entry point. If you override main()
, you do not need to invoke the inherited behavior by calling super
.
あなたは、Thread
のサブクラスを作成してそのmain()
メソッドをオーバーライドすることで、あなたのスレッドのもつメインエントリポイントを実装できます。あなたがmain()
をオーバーライドするならば、あなたは継承された挙動をsuper
を呼び出すことによって発動する必要はありません。
init()
NSThread
object.
初期化されたNSThread
オブジェクトを返します。
init(target: Any, selector: Selector, object: Any?)
NSThread
object initialized with the given arguments.
与えられた引数それらで初期化されたNSThread
オブジェクトを返します。
class func detachNewThreadSelector (Selector, toTarget : Any, with: Any?)
func start()
func main()
class func sleep(until: Date)
class func sleep(forTimeInterval : TimeInterval)
class func exit()
func cancel()
var isExecuting : Bool
var isFinished : Bool
var isCancelled : Bool
class var isMainThread : Bool
var isMainThread : Bool
class var main: Thread
NSThread
object representing the main thread.
メインスレッドを表しているNSThread
オブジェクトを返します。
class func isMultiThreaded () -> Bool
class var current: Thread
class var callStackReturnAddresses : [NSNumber]
class var callStackSymbols : [String]
var threadDictionary : NSMutableDictionary
var name: String?
var stackSize : Int
enum QualityOfService
class func threadPriority () -> Double
var threadPriority : Double
class func setThreadPriority (Double) -> Bool
static let NSDidBecomeSingleThreaded : NSNotification.Name
static let NSThreadWillExit : NSNotification.Name
NSThread
object posts this notification when it receives the exit()
message, before the thread exits. Observer methods invoked to receive this notification execute in the exiting thread, before it exits.
NSThread
オブジェクトは、それがexit()
メッセージを受け取る時に、スレッドが終了する前に、この通知を投函します。この通知を受け取るために発動されるオブザーバメソッドは、この通知は既存のスレッドにおいて、それが終了する前に、遂行します。
static let NSWillBecomeMultiThreaded : NSNotification.Name
NSThread
class posts this notification at most once—the first time a thread is detached using detachNewThreadSelector(_:toTarget:with:)
or the start()
method. Subsequent invocations of those methods do not post this notification. Observers of this notification have their notification method invoked in the main thread, not the new thread. The observer notification methods always execute before the new thread begins executing.
最初のスレッドが現在のスレッドから切り離される時に投函されます。NSThread
クラスはこの通知を最大一度だけ — スレッドがdetachNewThreadSelector(_:toTarget:with:)
またはstart()
メソッドを使って分離される最初の時に投函します。これらのメソッドの続いて起こる発動は、この通知を投函しません。この通知のオブザーバは、メインスレッドにおいて発動されるそれらの通知メソッドを持ちます、新しいスレッドではなく。オブザーバ通知メソッドは、常に新しいスレッドが遂行を始める前に遂行します。
protocol NSLocking
class NSLock
class NSRecursiveLock
class NSDistributedLock
class NSConditionLock
class NSCondition