簡體   English   中英

如何使用 LMAX 干擾器在數組中查找最大元素

[英]How to find max element in array using LMAX disruptor

您能否提供有關使用 LMAX Disruptor 模式實現並行排序或並行最大查找的代碼示例的鏈接。

它不是真的適用。 干擾器本質上就像一個管道,帶有一個單獨訪問每個項目的處理程序,但它的實現方式非常不同,以避免鎖定和改進引用的局部性。

為了找到最大值,這個處理程序必須在一個中心位置“泄漏”信息,從而與試圖產生自己的值的其他線程發生沖突。 要排序,我什至不知道從哪里開始……您希望每個處理程序對其他地方的單獨數組進行一些插入排序,然后再合並? 那太不合適了。

此外,某些線程必須將數據放入環中,這幾乎是您最初可以完成的線性搜索。 如果可以直接在現有陣列上構建環(跳過發布),那么破壞者的意義何在? 給定數組的子范圍,使用一堆線程會更好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM