📄 103
字号:
Received: from snow-white.ee.udel.edu by whimsy.udel.edu id aa22801; 11 Mar 97 20:23 GMTReceived: by carbon.chem.nyu.edu (SMI-8.6/1.20) id PAA29481; Tue, 11 Mar 1997 15:19:08 -0500Date: Tue, 11 Mar 1997 15:19:08 -0500Message-Id: <199703112019.PAA29481@carbon.chem.nyu.edu>From: "Edward J. Huff" <huffe@carbon.chem.nyu.edu>To: Mills@huey.udel.eduCC: Mills@huey.udel.edu, stenn@whimsy.udel.edu, Mills@huey.udel.edu, Don.Lewis@tsc.tdk.com, WhiskerP@logica.comIn-reply-to: <9703111439.aa06819@huey.udel.edu> (Mills@huey.udel.edu)Subject: Re: Adding volatile to variables shared with signal handlers>Thanks for the alert. I suspect we have not heard the last of this>issue.I said "volatile required for variabled modified by signal handler."Actually, it is possible to construct a case where volatile would berequired to force the compiler to actually store the values specifiedinto the static variables in the mainline routine so that the signalhandler will read the correct value. So I suppose strictly speakingthe variables which are read by the signal handler should also bemarked volatile. activefds INPUT ONLYmaxactivefd INPUT ONLYrefio INPUT ONLYninterfaces INPUT ONLYdebug INPUT ONLYActually, the book says "You specify volatile qualified types forobjects accessed or altered by signal handlers, by concurrentlyexecuting programs, or by special hardware (such as memory-mappedI/O control register)."Also "A volatile qualified type indicates that agencies unknown to thetranslator can access or alter the value stored in the object. Thetranslator can assume that it has complete control of all objects thatdo not have volatile qualified types."
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -