小编101*_*010的帖子

易变量

我最近接受了一家软件公司的采访,他问我以下问题:

你能告诉我在变量前添加volatile的含义是什么吗?你能解释一下为什么这很重要吗?

我的大多数编程知识都来自C,但是工作岗位是针对C#的(我想我可能会根据具体问题的需要添加这些信息)

我回答说它只是让编译器知道变量可以跨进程或线程使用,并且它不应该对该变量使用优化; 优化它可以恶化行为.简而言之,它是对编译器的警告.

然而,根据采访者的说法,反过来说,volatile关键字会警告操作系统,而不是编译器.

我对此感到有些困惑,所以我做了一些研究,实际上找到了相互矛盾的答案!一些消息来源说这是针对编译器的,还有其他针对操作系统的.

这是什么?它是否因语言而异?

c c# volatile

18
推荐指数
2
解决办法
557
查看次数

标签 统计

c ×1

c# ×1

volatile ×1