Class GuildLoad
java.lang.Object
handling.world.guild.GuildLoad
伺服器啟動時以多執行緒並行載入所有公會資料的載入器。
持有固定大小的 NumSavingThreads(6)條 TimingThread 執行緒池,
每條執行緒以 ArrayBlockingQueue 排隊待載公會 ID;
透過 AtomicInteger 輪詢分派任務,各執行緒各自讀取 DB 並呼叫
World.Guild.addLoadedGuild(MapleGuild) 將 MapleGuild 實例注入全域快取。
QueueGuildForLoad— 將公會 ID 排入佇列並初始化 BBS 回覆快取。Execute— 啟動所有工作執行緒並傳入同步通知物件,完成後呼叫notify。
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic voidstatic voidQueueGuildForLoad(int hm, Map<Integer, Map<Integer, MapleBBSThread.MapleBBSReply>> replie)
-
Field Details
-
NumSavingThreads
public static final int NumSavingThreads- See Also:
-
-
Constructor Details
-
GuildLoad
public GuildLoad()
-
-
Method Details
-
QueueGuildForLoad
public static void QueueGuildForLoad(int hm, Map<Integer, Map<Integer, MapleBBSThread.MapleBBSReply>> replie) -
Execute
-