バックエンドの目的で CSV ファイル形式を使用しています。CSV ファイルを頻繁に更新するはずだったので、モードstatus.csv
でファイルを開いていましたr+
。問題は、その CSV を閉じることができなかったことです。そうすると、例外処理に進みます。開いたままにすると、ヒープメモリが占有され、多くの問題が発生します。
FSFILE *tp;
enrowbuf=atoi(httemp);
FSchdir("\\");
FSchdir("WWW");
FSchdir("DBMS");
tp = FSfopen("Status.csv","r+");
if(tp!=NULL)
{
if(enrowbuf==1)
{
FSfseek(tp,(43*enrowbuf),SEEK_SET);
}
else
{
FSfseek(tp,(42*enrowbuf),SEEK_SET);
FSfwrite(&Relay4,48,1,tp);
}
FSfclose(tp);
}