1. マルチスレッドの安全性を学ぶとき、複数のスレッドが同時に実行されるときに、同じリソースへの「同時」アクセスを避けるために同期ロックを使用することを学びました。以前アトミックを学習していたときに、このキーワードはプロパティがスレッドセーフかどうかを設定するために使用されることを思い出しました。そこで、プログラムで同期ロックをオフにし、上記のキーワードを使用してプロパティを定義しましたが、マルチスレッド操作を実行した後、この設定ではスレッド セーフが実現されないことがわかりました。 私の理解のどこが間違っているのか聞いてもいいですか?
私のプログラムコードは次のとおりです:
リーリー以下は出力の一部です: 2 つの 98 が出力されることに注意してください
リーリー高洛峰2017-05-02 09:31:14
_totalTicket--
は、次のように setter getter メソッドを介さずにインスタンス変数を直接操作し、属性にアトミック属性を追加します。これは、スレッドの安全性を確保するために属性の読み書き時にロックされます # 🎜🎜#
リーリー
関連情報