什麼是callback function ?


In computer programming, a callback is executable code that is passed as an argument to other code. It allows a lower-level software layer to call a subroutine (or function) defined in a higher-level layer.

所謂callback function就是等著被呼叫的function 通常會使用在interrupt handler(中斷處理), 或一些event handler(事件處理)

這些callback function一般會在你的主程式向系統註冊它們的address
當某些硬體或軟體中斷髮生時, 或某些事件發生時
系統就會去呼叫這些callback function

所以, callback function並不是直接讓你的程式呼叫的~ 如果沒有使用callback function的機制, 而需要在某些事件發生時去做一些事 就變成要有一個迴圈一直去監視事件是否發生, 這就會很耗損CPU時間

在Windows的AP或driver很常見到Callback function的使用比如說, timer也是一個callback function~ 而gtk中 event loop 的概念也需要 callback function 來實現 !



參考資料

事件驅動程式設計
http://tinyurl.com/28mdag

wiki : Callback (computer science)

留言

  1. GTK 裡面 運用signal 的方式
    也是需要callback function
    實際上是 signal被觸發到 執行callback function ~ signal 會提供一些 現在的資訊傳給callback function ...



    怪不得之前怎麼看都看不懂

    回覆刪除

張貼留言

發表一下意見,互動一下唄!

Google Search

推薦內容橫式

本月熱門文章

綠能貪污原來大多是國民黨民眾代表

國民黨李煥家族 李慶中李慶珠甲等特考舞弊 李慶華詐領助理補助款 李慶安雙重國籍

中國新病毒 HMPV 人類偏肺病毒 要戴口罩 勤洗手

八炯統戰影片心得 千萬要謹慎 勿掉入金錢陷阱

國防安全:中華人民共和國吸收中華民國高階軍官作為內應

2024年5月至12月台中市非自然死亡列表 從南寧, KK .. 到台中西屯?

立法院過去幾週都被國民黨及黃國昌挾持 無法討論法案 還要直接一路通過

讓你懷疑自已的記憶力以及語文能力的經典討論串:無心插柳柳橙汁

統戰影片心得 舔共台灣人做的是會得罪雙方人民的事情

柯文哲:當選後將改掉黑金槍毒不得參選」排黑條款。 台灣民眾黨有哪些人受影響

這個網誌中的熱門文章

Android應用開發豆知識:利用 adb 安裝 apk 到裝置上

Android 中文輸入法 官方版 ! Gboard - Google 鍵盤 開始支援注音輸入啦

Google Play 推薦Android app 誠徵App排行榜

北京故宮首訪,一窺清宮秘史 大玉兒 & 甄嬛

[家教][社會觀察] 建中教我的事 沒上建中被父母親折磨? 在建中到底是如何 ...

[FAANG面試] Amazon/AWS 領導力準則 14 Amazon Leadership Principles

Acer ICONIA Smart S300 更新後越來越好 Acer也有出手機?!

[品質控制] 什麼是Sanity test ? 軟體測試常見名詞整理 包含不同部門的測試人員負責範圍

新鮮人找工作:職場名詞解釋 AE FAE Pre-sales Post-sales