c++测试题2016-6-2

本文探讨了线程间的数据共享机制,解释了为何不同线程间的变量操作需要同步,并介绍了几种常见的排序算法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.虽然val并没有显式地赋值,但是对于静态变量而言,如果不显式赋值,编译器会自动赋值为默认值,对int类型默认值为0,所以选"已初始化数据段"

image

2.每个线程有自己的堆栈,但共用数据区的一套寄存器.

image

3.对于D来讲,其他线程对x进行的任何操作,都不会对x进行赋值操作有任何影响.但是因为这个操作,其他线程中有关x的操作则要进行相应的同步.但是赋值操作本身不需要同步.

首先要理解"同步"的概念,在此题中,同步可以理解为如果在多个线程中,如果因为各线程中的语句的执行顺序不同会对结果造成影响,则认为需要同步.否则不需要.

同步一般至少涉及到两个线程,通常由一个线程对另一个线程进行同步.比如一个线程A执行x=1;另一个线程B执行x++;则B应该对A进行同步,即同步的责任交给了B.

image

4.

image

八大排序算法 - guisu,程序人生。 逆水行舟,不进则退。 - 博客频道 - youkuaiyun.com
http://blog.youkuaiyun.com/hguisu/article/details/7776068

转载于:https://my.oschina.net/ray1421/blog/689991

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值