Unterschied zwischen delegate.BeginInvoke und der Verwendung von ThreadPool-Threads in C #
In C # gibt es einen Unterschied zwischen der Verwendung eines Delegaten zur asynchronen Ausführung einiger Aufgaben (Aufrufen von BeginInvoke ()) und der Verwendung eines ThreadPool-Threads (siehe unten)
<code>public void asynchronousWork(object num) { //asynchronous work to be done Console.WriteLine(num); } public void test() { Action<object> myCustomDelegate = this.asynchronousWork; int x = 7; //Using Delegate myCustomDelegate.BeginInvoke(7, null, null); //Using Threadpool ThreadPool.QueueUserWorkItem(new WaitCallback(asynchronousWork), 7); Thread.Sleep(2000); } </code>
Bearbeiten:
BeginInvoke stellt sicher, dass ein Thread aus dem Thread-Pool zum Ausführen des asynchronen Codes verwendet wird. Gibt es also einen Unterschied?