Pregunta

¿Cómo encuentro el procesador en el que mi hilo se está ejecutando en C #?

¿Fue útil?

Solución

Esto no es necesariamente una constante - el hilo se podría programar en diferentes núcleos a través de su vida útil. Puede establecer máscaras de afinidad para atar un hilo en particular a una CPU particular, si así lo desea. Ver las documentación de la API para Thread.BeginThreadAffinity para más detalles sobre lo que se puede hacer dentro de .Net.

Otros consejos

En mi humilde opinión, es posible que el hilo .NET no está vinculado a ninguna de las hebras nativas. > NET tiempo de ejecución puede mover los hilos .NET entre los distintos subprocesos nativos y procesadores en cualquier momento.

No estoy seguro de que se puede. Puede obtener la máscara de afinidad de procesos (GetProcessAffinityMask), y establecer la misma (SetProcessAffinityMask). También puede configurar la máscara de afinidad hilo, pero mi opinión es que, al hacerlo, se restringe el hilo para que se ejecuta en uno de los procesadores que haya definido su máscara de afinidad a.

Si usted es profundizar en temas específicos que se ejecutan en núcleos específicos es probable que desee configurar la máscara de afinidad de procesos para definir el conjunto de núcleos de su código se puede ejecutar en, y los hilos en su proceso de continuación, flotar entre los núcleos seleccionados.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top