// 取得 share 變數使用權:
inc share_token; // 要求取得 share 變數使用權
dzsn share_token; // 由於保證 ram 內容一次只有一個 fppa 能動~所以能保證只有一個 fppa 能過這關
goto $-2; // 其它 fppa 進入等待的循環
inc share_token; // fppa 取得 share 變數使用權
// 釋放 share 變數使用權 :
dec share_token; // fppa 釋放 share 變數使用權
當cpu都同步同速時~幾乎沒有問題~
反之,各cpu就有可能在1-2間打結,造成 share_token 永不為零的狀況,死當。
這個問題很有可能不被發現~要看你這段程式的使用頻率狀況而定~在隨機的情況下,發生的機率應該很大。
訂閱:
張貼留言 (Atom)
更高效處理 micro second 的方式
更高效處理 micro second 的方式… 以 STM32 為例… __IO unsigned long sys_tick = 0; void SysTick_Handler(void) { HAL_IncTick(); sys_tick += (SysTi...
-
rails blog -d mysql 建立一個名為 blog 的網站app,使用 mysql cd blog 進去 gen 好的網站 config/database.yml 編輯資料庫設定 rake db:create 自動建立資料庫 ruby script/generate ...
-
https://github.com/ljean/modbus-tk/ install pip… sudo apt-get install python-pip install... download modbus_tk-x.x.x.tar.gz tar zxvf...
-
DMX protocol… # 1:break + 1:start + 512:channel python: import serial class DMX512: def __init__(self, port): self.seria...
沒有留言:
張貼留言