Sommaire

Multithreading et .NET

L’encapsulation de gestion de processus est proposée au travers du type System.Diagnostics.Process

L’extrait de code suivant permet d’exécuter le programme Windows calc.exe depuis un programme .NET en utilisant les types Process et ProcessStartInfo. Process

using System; 
using System.Diagnostics; 
 
namespace DemoAppDomain 
{ 
  class Program 
  { 
    static void Main(string[] args) 
    { 
      ProcessStartInfo psi = new ProcessStartInfo("calc.exe"); 
      Process.Start(psi); 
 
      Console.ReadKey(); 
    } 
  } 
}

La classe Process permet bien d’autres actions, comme l’énumération des processus actifs et la lecture de leurs caractéristiques : PID, nom, nombre de threads.

Il existe une couche intermédiaire entre le processus du système d’exploitation et votre application .NET managée. Cette couche s’appelle le domaine d’application (AppDomain). Lorsque l’application est lancée, la CLR génère un AppDomain par défaut qui fait la liaison avec le processus réel du système d’exploitation. La plupart du temps, il y a autant de processus qu’il y a d’applications .NET en cours d’exécution et le développeur n’a rien de particulier à faire. Cependant, dans le cas d’applications ...