Is the thread created at C # user level or kernel level?

I recently studied the operating system and came across this question.

Is the thread created at the C # user level or kernel level, for example:

Thread mythread=new Thread(ThreadStart(something));

As far as I know, a process with intensive cpu flow at the kernel level can run faster than at the user level. . Since the book of the Modern Operating System says: "Schedule the user-level thread will not be traps in the kernel, so they are easier than the kernel-level thread."
Therefore, I think that a user-level thread cannot work on different processors, which requires capture in the kernel.

And in linux, the thread created pthread_createis at the kernel level. Therefore, I am interested in learning about the .Net C # function.

+4
source share
2 answers

This is unix terminology, on Windows you would say "fiber or thread." The term green thread is also a fairly common way of saying user thread.

It is not up to C # or CLR to solve this, it defines a CLR node.

- , CLR -. , Silverlight,.NET Compact,.NETCore, Xbox, Windows Phone, Hololens .., . IIS SQL Server , , , ASP.NET CLR. # , AutoCAD - .

, CLR , . ICLRTask ICLRTaskManager . , ICorThreadpool.

, . , SQL Server. , CLR . , 2000- . . , , , .

, " ".

+6

. , /, , .

, , .

+3

Source: https://habr.com/ru/post/1695439/


All Articles