我知道任务可以在多核系统中并发运行。每个任务都分为不同的核心。
但是在单核系统中呢?只是任务切换吗?
在大多数系统中,并发是模拟的。操作系统从一个任务切换到另一个任务,分配资源。
在单核系统中,这是同时运行多个线程的唯一方法。即使在多核系统中,您也会有类似的东西。在现代系统中,您运行的任务比您拥有的内核数量还要多。因此,操作系统通常会根据某些因素在线程中随机排列,将它们分配给可用内核。
我知道任务可以在多核系统中并发运行。每个任务都分为不同的核心。
但是在单核系统中呢?只是任务切换吗?
在大多数系统中,并发是模拟的。操作系统从一个任务切换到另一个任务,分配资源。
在单核系统中,这是同时运行多个线程的唯一方法。即使在多核系统中,您也会有类似的东西。在现代系统中,您运行的任务比您拥有的内核数量还要多。因此,操作系统通常会根据某些因素在线程中随机排列,将它们分配给可用内核。
javascript python java c# php android html jquery c++ css ios sql mysql arrays asp.net json python-3.x ruby-on-rails .net sql-server django objective-c excel regex ruby linux ajax iphone xml vba spring asp.net-mvc database wordpress string postgresql wpf windows xcode bash git oracle list vb.net multithreading eclipse algorithm macos powershell visual-studio image forms numpy scala function api selenium