2012-04-26 12 views
0

私はちょうどBNF Grammar for JAVAを見つけました。その中で、 "修飾子"は "threadsafe"と呼ばれる終端記号を持っています。しかし、以前はJava言語仕様、Java SE 7 Edition(docs.oracle.com/javase/specs/jls/se7/jls7.pdf)でその修飾子を見つけることはできませんでした。同時に、このコードをexcuting別のスレッドが変数の値を変更できない場合、変数はスレッドセーフであると、コンパイラは賢いことを行うことがJAVAの "threadsafe"修飾子はありますか?

:しかし、私はと弾丸16でそれを説明、hereそれを見つけましたコードをより速くまたはより小さくすることができます。

これは本当の修飾語ですか?それはJAVAのアップコンバージョンバージョンで導入されるはずですか?

+4

いいえ、「threadsafe」は修飾語ではありません。これはちょうどインターネット上のもので構成されています。 –

+0

私は読んだときに笑いを浮かべました。「...コンパイラはコードをより速くするか小さくするために賢いことをするかもしれません。」 –

+0

なぜ、(少なくとも)2つの異なる大学が、このような存在しない修飾語を伝播するのか不思議です。 – KoenigGunther

答えて

2

hereをJava BNFの公式ソースで見つけようとしてください。

+0

ありがとうございます!グーグル "Java BNF"は、私をジュネーブの上記大学のサイトに直接導いてくれました。信頼できると思われました:) – KoenigGunther

0

いいえ、同じリストにはprivate_protectedもありません。

0

JavaとGroovyの両方には、コンパイラで「threadsafe」や「goto」のようなキーワードが「予約トークン」として存在しますが、現在のところ意味がありません。

+0

これについての参考資料はありますか?私はそれがドキュメントhttp://docs.oracle.com/javase/tutorial/java/nutsandbolts/_keywords.htmlに記載されていることを知っているが、スレッドセーフについて聞いたことはありません –

関連する問題