ThreadPool.UnsafeQueueUserWorkItem(WaitCallback, Object) Methode

Definition

Führt die Warteschlange des angegebenen Delegaten an den Threadpool durch, verteilt den Aufrufstapel jedoch nicht an den Workerthread.

public:
 static bool UnsafeQueueUserWorkItem(System::Threading::WaitCallback ^ callBack, System::Object ^ state);
public static bool UnsafeQueueUserWorkItem(System.Threading.WaitCallback callBack, object state);
[System.Security.SecurityCritical]
public static bool UnsafeQueueUserWorkItem(System.Threading.WaitCallback callBack, object state);
static member UnsafeQueueUserWorkItem : System.Threading.WaitCallback * obj -> bool
[<System.Security.SecurityCritical>]
static member UnsafeQueueUserWorkItem : System.Threading.WaitCallback * obj -> bool
Public Shared Function UnsafeQueueUserWorkItem (callBack As WaitCallback, state As Object) As Boolean

Parameter

callBack
WaitCallback

A WaitCallback that represents the delegate to invoke when a thread in the thread pool picks up the work item.

state
Object

Das Objekt, das an den Delegaten übergeben wird, wenn der Dienst aus dem Threadpool erfolgt.

Gibt zurück

true wenn die Methode erfolgreich ist; OutOfMemoryException wird ausgelöst, wenn die Arbeitsaufgabe nicht in die Warteschlange gestellt werden konnte.

Attribute

Ausnahmen

Der Aufrufer verfügt nicht über die erforderliche Berechtigung.

Es wurde eine Nichtspeicherbedingung gefunden.

Die Arbeitsaufgabe konnte nicht in die Warteschlange gestellt werden.

callBack ist null.

Hinweise

Im Gegensatz zur QueueUserWorkItem Methode UnsafeQueueUserWorkItem wird der aufrufende Stapel nicht an den Workerthread weitergegeben. Dadurch kann Code den aufrufenden Stapel verlieren und dadurch seine Sicherheitsberechtigungen erhöhen.

Vorsicht

Die Verwendung UnsafeQueueUserWorkItem könnte versehentlich ein Sicherheitsloch öffnen. Die Codezugriffssicherheit basiert auf den Berechtigungsprüfungen aller Aufrufer im Stapel. Wenn die Arbeit in eine Threadpoolthreadwarteschlange eingereiht UnsafeQueueUserWorkItemwird, verfügt der Stapel des Threadpoolthreads nicht über den Kontext der tatsächlichen Aufrufer. Bösartiger Code kann dies möglicherweise ausnutzen, um Berechtigungsprüfungen zu vermeiden.

Gilt für:

Weitere Informationen