I thread di Java e C# sono basati su thread User-Space o thread Kernel-Space?I thread di Java o C# sono basati su thread User-Space o thread Kernel-Space?
risposta
In C#, i thread sono thread del sistema operativo o supportati da un pool di thread, che è comunque composto da thread del sistema operativo. Un thread del sistema operativo utilizza sia risorse utente che kernel.
Si noti che i thread .NET sono liberi di essere spostati in un thread OS diverso in qualsiasi momento (nessuna idea di Java, comunque). Ecco perché c'è solo un ID thread gestito. – Cameron
In Linux, capisco che si tratta di thread dello spazio utente.
I thread di spazio del kernel di Linux fanno effettivamente parte del sistema operativo e in genere vengono eseguiti con privilegi elevati in modo che possano accedere allo spazio di indirizzi di qualsiasi processo. L'implementazione di thread Java o C# su Linux utilizzando thread dello spazio del kernel non è necessaria e sarebbe estremamente pericolosa. (Ciò presuppone che sia tecnicamente possibile ... che non credo sia il caso.)
Penso che il poster si stia chiedendo se ogni thread Java/.NET è il proprio thread visibile al kernel (es. Thread Kernel-Space) o se molti thread Java/.NET sono programmati da use-space significa usare un singolo kernel visibile thread (es. thread User-Space o * thread leggeri *). – Karmastan
@ Karmastan - Se lo ha fatto, ha usato una terminologia errata. In Linux ci sono in realtà kernel * space * threads; cioè thread eseguiti con accesso a dispositivi fisici, ecc. –
- 1. Service o Thread o AsyncTask
- 2. C# Timer o Thread. Sonno
- 3. Cosa sono i thread (cos'è un thread)?
- 4. Boost.Thread o solo :: thread?
- 5. Thread o servizi
- 6. Sono diversi thread su diverse istanze di JavascriptSerializer o JavascriptDeserializer thread safe
- 7. Thread Java Rifiuti raccolti o meno
- 8. Thread/threadpool o backgroundworker
- 9. Dopo l'avvio di FileSystemWatcher - Thread Pool o thread dedicato?
- 10. Come sono programmati i thread java?
- 11. I thread sono eseguiti su più processori?
- 12. Thread verde e thread nativi in java
- 13. I generatori sono thread-safe?
- 14. Amico, dov'è il mio thread ?? (o: rinominare un thread pool di thread .NET - è possibile?)
- 15. Ottenimento dell'ID thread per i thread Java in Linux
- 16. Attendere più thread (thread Posix, C++)
- 17. Registrazione asincrona thread-thread in C++
- 18. Creazione di una libreria C thread-thread
- 19. Debug di thread C#
- 20. C++, come condividere i dati tra processi o thread
- 21. Affinità thread Java
- 22. Monitoraggio thread Java. Come scoprire i thread live non daemon?
- 23. Thread di lavoro Threadpool .NET e thread di I/O asincroni
- 24. std :: thread - denominazione del thread
- 25. Elenca tutti i thread
- 26. Pool di thread C++
- 27. Utilizzo della memoria di thread o processo in Java
- 28. Come pianificare thread Java
- 29. Esempio di thread Java?
- 30. I thread client proxy CXF sono sicuri?
Piattaforma e implementazione specifiche. –