如果在單核系統中沒有錯誤,但是在多核系統或多處理器中出錯,可能是競爭條件錯誤或者同步、內存順序錯誤。
測試實例的應用場景:
1、在一個線程自身隊列上調用push()或pop()來驗證該隊列工作基礎級別
2、在一個空隊列上一個線程調用push(),另一個線程調用pop()
3、在一個空隊列上多個線程調用push()
4、在一個滿隊列上多個線程調用push()
5、在一個空隊列上多個線程調用pop()
6、在一個滿隊列上多個線程調用pop()
7、在一個特定的滿隊列上多個線程調用pop(),該隊列的總長度不夠,無法滿足所有線程
9、在一個空隊列上同時又多個線程調用push()和一個線程調用pop()
10、在一個滿隊列上同時又多個線程調用push()和一個線程調用pop()
11、在一個空隊列上同時又多個線程調用push()和多個線程調用pop()
12、在一個滿隊列上同時又多個線程調用push()和多個線程調用pop()