(‘both’, ‘MQL4 / MQL5 両対応’)ファイル入出力
FileFlush書き込み内容を確実にディスクへ反映する
FileWrite系で書いた内容は、しばらくメモリ上に留まってからディスクに書かれることがある。この関数はそれをすぐにディスクへ反映させる。EAが強制終了したときの取りこぼしを減らせる。
1書式
void FileFlush( int file_handle );
書式はMQL4・MQL5で同じ。
2引数
| 引数 | 内容 |
|---|---|
| file_handle | 対象のファイルハンドル |
3戻り値
なし。
4使用例
int h = FileOpen("mylog.csv", FILE_WRITE|FILE_CSV);
FileWrite(h, TimeCurrent(), Bid);
FileFlush(h); // ここで確実に書き込む
MetaEditorでコンパイル0エラー・0警告を確認済み。
6よくある罠
⚠ 実務で踏んだもの
- 毎回の
FileWrite直後に呼ぶと、ティックの多い銘柄では処理が重くなる。1分に1回など、間隔を空けて呼ぶだけでも取りこぼしはかなり減らせる。