對幾個安全概念的體會

來源:互聯網
上載者:User

型別安全:指程式設計語言在任何時刻總是知道資料的類型。例如函數參數類型要求string型,則必須傳string型資料給它,否則就會出錯;如果傳其它類型的資料,程式設計語言也能正常工作不會出錯,則該程式設計語言不是型別安全的。

 

安全執行緒:指函數可以被多個安全執行緒的調用(注意,是安全的調用,但函數不一定同時工作),我理解的是它和可重新進入的區別在於“同時”二字,安全執行緒可以通過訊號量來保證安全訪問全域變數或靜態變數,但無法保證同時工作,因為要等訊號量,而可重新進入是根本不使用全域變數或靜態變數,所以說可重新進入一定是安全執行緒的,安全執行緒但不一定可重新進入。另外,有些函數可以被多個線程同時調用,但是使用了靜態或全域變數,導致結果出錯,被認為不是安全執行緒的。

 

可重新進入:指函數可以同時被多個安全執行緒的調用,我的理解就是函數內部不使用全域變數或靜態變數,所以可以同時重複進入這個函數,而不會產生問題。函數若使用靜態或全域變數,則會導致多個線程同時操作而出錯,即為不可重新進入的。

 

以上是本人的一點愚解,歡迎拍磚。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.