Skip to content

Commit 0c8f4d2

Browse files
committed
[增加](存档): 增加存档参数的配置化
1 parent 8e72fd7 commit 0c8f4d2

1 file changed

Lines changed: 4 additions & 8 deletions

File tree

GameFrameX.Core/Components/StateComponent.cs

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
using GameFrameX.DataBase.Mongo;
99
using GameFrameX.Utility.Extensions;
1010
using GameFrameX.Foundation.Logger;
11+
using GameFrameX.Utility.Setting;
1112
using MongoDB.Bson;
1213
using MongoDB.Driver;
1314

@@ -208,11 +209,6 @@ public override async Task WriteStateAsync()
208209

209210
#region 仅DBModel.Mongodb调用
210211

211-
/// <summary>
212-
/// 单次批量保存的最大数量
213-
/// </summary>
214-
private const int ONCE_SAVE_COUNT = 500;
215-
216212
/// <summary>
217213
/// 保存所有状态数据到数据库
218214
/// </summary>
@@ -262,7 +258,7 @@ public static async Task SaveAll(bool shutdown, bool force = false)
262258
writeList.Add(new ReplaceOneModel<BsonDocument>(filter, bsonDoc) { IsUpsert = true, });
263259
idList.Add(state.Id);
264260
}
265-
}));
261+
}, GlobalSettings.CurrentSetting.SaveDataBatchTimeOut));
266262
}
267263
}
268264

@@ -276,9 +272,9 @@ public static async Task SaveAll(bool shutdown, bool force = false)
276272
LogHelper.Debug($"[StateComp] 状态回存 {stateName} count:{writeList.Count}");
277273
var currentDatabase = GameDb.As<MongoDbService>().CurrentDatabase;
278274
var collection = currentDatabase.GetCollection<BsonDocument>(stateName);
279-
for (var idx = 0; idx < writeList.Count; idx += ONCE_SAVE_COUNT)
275+
for (var idx = 0; idx < writeList.Count; idx += GlobalSettings.CurrentSetting.SaveDataBatchCount)
280276
{
281-
var docs = writeList.GetRange(idx, Math.Min(ONCE_SAVE_COUNT, writeList.Count - idx));
277+
var docs = writeList.GetRange(idx, Math.Min(GlobalSettings.CurrentSetting.SaveDataBatchCount, writeList.Count - idx));
282278
var ids = idList.GetRange(idx, docs.Count);
283279

284280
var save = false;

0 commit comments

Comments
 (0)