Sono curioso di sapere come .NET definisce un'interfaccia architettonica di processo se compilo il codice sorgente sotto l'impostazione di configurazione "Qualsiasi CPU". Ho sempre pensato che se si esegue quel processo in un computer x64, sarà un processo a 64 bit. Tuttavia, l'esempio seguente mostra una cosa completamente diversa.In che modo .NET definisce un'interfaccia architettonica di processo?
Ho un semplice programma di console con codice come questo:
static void Main(string[] args)
{
Console.WriteLine("Process Type: {0}", Environment.Is64BitProcess?"64 Bit":"32 Bit");
Console.ReadLine();
}
e l'impostazione di configurazione è simile a questo:
E il mio processore è a 64 bit:
Infine, il risultato mostra
La prego di dare alcuni spunti?
Ma qual è la differenza tra "CPU preferita a 32 bit" e "x86" allora? – GeorgeChond
La differenza tra "Any CPU 32-bit preferred" e "x86" è: Un'applicazione .NET compilata su x86 non funzionerà su un sistema ARM Windows, ma un'applicazione "Any CPU 32-bit preferred" verrà eseguita correttamente. – MikeG