Skip to content

Commit ac004fd

Browse files
設定ファイルから読み込んだ設定へのアクセスにメモリキャッシュ(変数)を使う
1 parent bf393b6 commit ac004fd

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

AppUtils.ahk

+12
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,27 @@
22
; ユーティリティ 初めにincludeすること
33
;******************************************************************
44

5+
global settingsCache := {}
6+
57
;【概要】設定ファイルから値を取得します
8+
; 一度取得した値はキャッシュされます (キャッシュクリアしたい場合はreloadが必要)
69
;【引数】section: 設定ファイルのセクション名
710
; key: 設定ファイルのキー名
811
;【戻値】設定値
912
;【備考】設定値はSettings.iniの設定値によって取得元を変更します
1013
getSettingsValue(section, key) {
14+
global settingsCache
15+
16+
cacheKey := section . "|" . key
17+
if settingsCache.HasKey(cacheKey) {
18+
return settingsCache[cacheKey]
19+
}
20+
1121
IniRead setting, %A_ScriptDir%\Settings.ini, FILE, name
1222
IniRead value, %A_ScriptDir%\settings\%setting%.ini, %section%, %key%
1323

24+
settingsCache[cacheKey] := value
25+
1426
return value
1527
}
1628

0 commit comments

Comments
 (0)