C#控制台程序创建了两个线程然后运行,那么这两个线程使用CPU一个线程交替运行还是使用两个线程并行?
答案:3 悬赏:10 手机版
解决时间 2021-02-22 12:44
- 提问者网友:捧腹剧
- 2021-02-21 14:08
C#控制台程序创建了两个线程然后运行,那么这两个线程使用CPU一个线程交替运行还是使用两个线程并行?
最佳答案
- 五星知识达人网友:街头电车
- 2021-02-21 14:36
这个要分情况来看。
一般来看,都是并行运行。具体怎么运行,是cpu自己的事。
但是,如果访问了共享资源,并且使用了锁机制。那么就是一个线程运行完毕,释放了锁,第二个线程才会访问共享资源。这样就是顺序执行。
一般来看,都是并行运行。具体怎么运行,是cpu自己的事。
但是,如果访问了共享资源,并且使用了锁机制。那么就是一个线程运行完毕,释放了锁,第二个线程才会访问共享资源。这样就是顺序执行。
全部回答
- 1楼网友:夜风逐马
- 2021-02-21 16:24
你创几个线程就是几个线程 不然写代码算什么
- 2楼网友:酒安江南
- 2021-02-21 16:04
或许你需要调用windows api才可以实现,代码如下:
class program
{
[dllimport("kernel32.dll")]
static extern intptr getconsolewindow();// 获取控制台句柄
[dllimport("user32.dll")]
static extern bool showwindow(intptr hwnd, int ncmdshow);
const int sw_hide = 0;// 隐藏
const int sw_show = 5;// 显示
static void main(string[] args)
{
console.writeline("3秒后立即隐藏...");
system.threading.thread.sleep(3000);
showwindow(getconsolewindow(), sw_hide);// 隐藏
console.readkey(true);
}
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯