SQL Server线程与纤程的比较


  本文标签:SQL Server线程

  以下的文章主要描述的是SQL Server线程与纤程在实际应用中的差别还有对SQL Server数据库对线程与纤程的正确管理的描述,如果你也对SQL Server线程与纤程的实际应用感兴趣的话,以下的的文章你最好不要错过  。

  SQL Server线程与纤程两者的区别

  SQL Server管理纤程的调度,而OS管理线程的调度;线程模式里 SQL Server为每个并发用户创建配一个线程,而纤程模式中 SQL Server为每个CPU分配一个线程,并为每个并发用户创建配一个纤程,一个线程中可以有多个纤程,纤程只在SQL Server线程里切换,不用上下文切换

  注意:SQL Server Personal Edition和 Desktop Edition不支持纤程模式;Win95,98不支持线程池

  SQL Server对线程和纤程的管理

  SQL Server既可以为用户连接维护一个线程池,也可以维护一个纤程池(如果设置了纤程模式,则系统只维护纤程池,不在是线程池) 在连接池中,线程和纤程都看作工作纤程,并可以由max worker threads 选项来设置SQL Server可分配的SQL Server线程或纤程的最大数目,一般采用默认值255   。

  当一个语句需要SQL Server执行时:

  (1)如果线程池里用空闲的线程,SQL Server将为该语句分配一个线程

  (2)如果线程池中没有可供使用的空闲线程并且没有达到最大工作线程数量,SQL Server将为该命令创建新的工作线程

  (3)如果到了最大线程使用数量并且没有空闲的SQL Server线程,则进程必须等待其他处理完成后释放一个线程

  以上的相关内容就是对SQL Server线程与纤程两者的区别与SQL Server对线程和纤程的管理的介绍,望你能有所收获  。 

SQL Server线程与纤程两者的区别

上述的相关内容就是对SQL Server线程与纤程两者的区别与SQL Server对线程和纤程的管理的描述,希望会给你带来一些帮助在此方面  。