Maison >développement back-end >C++ >Comment transmettre des paramètres à une méthode ThreadStart en C# ?

Comment transmettre des paramètres à une méthode ThreadStart en C# ?

Barbara Streisand
Barbara Streisandoriginal
2025-01-07 08:07:41213parcourir

How to Pass Parameters to a ThreadStart Method in C#?

Passer des paramètres à ThreadStart à partir du thread principal

Lors de la création d'un nouveau thread et de la transmission de paramètres à sa méthode cible, il est essentiel de comprendre la syntaxe et options disponibles en C#. Considérons le scénario suivant :

<br>public void download(string filename)<br>{</p>
<pre class="brush:php;toolbar:false">// download code

}

Thread thread = new Thread (nouveau ThreadStart(download(filename)));

Cependant, ce code entraînera une erreur de compilation, car le constructeur ThreadStart attend une méthode sans paramètres. Alors, comment pouvons-nous transmettre des paramètres à la méthode ThreadStart à partir du thread principal ?

Approche la plus simple : expression Lambda

La solution la plus simple consiste à utiliser une expression lambda comme méthode cible, comme indiqué ci-dessous :

string filename = ...
Thread thread = new Thread(() => download(filename));
thread.Start();

Cette technique vous permet de transmettre plusieurs paramètres à la méthode cible et fournit une vérification au moment de la compilation sans le besoin de moulage à partir d'objets.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn