2013-02-05 65 views
0

我有一個自定義帖子類型(產品)具有元字段 持有的庫存數量。wordpress編輯鎖

一旦訂單由IM更新量

`$數量= get_post_meta($後> ID, '庫存',TRUE);

$ qty--;

Update_post_meta($後> ID,「股票」,$數量);`

的事情是我怕的是,此更新 多和simultanious調用可能導致數據是不正確的。如果一個呼叫會當另一個電話正在進行...

有沒有辦法鎖定這段代碼,並確保它不會被解僱 Simultaniously或我exadurating在我的擔憂?

回答

1

一般來說,不應該有一個問題,我的問題是爲什麼你得到的數量,然後用它來減去它,並再次更新,當一切都可以一步完成。我假設這兩種方法正在調用一個數據庫。在MySQL中,你可以這樣做

UPDATE yourtable SET quantity = quantity-1 WHERE id = .... 

這樣扣發生在你的數據庫,並要保存一個查詢...

+0

那麼我認爲這可能解決它,因爲MySQL將鎖定編輯該字段... thx –

+0

這是真的,但請記住,在第一種情況真正成爲問題之前,您將不得不體驗大量的併發性,並且如果您是的話,請確保您正在使用事務處理您的寫查詢... – Feras

+0

can你評估了什麼程度的併發可以使這個過程失敗? (我知道這是一個硬件和其他的東西,但讓我們說一箇中間系統和一個粗略的數字就足夠了:-)) –