SSブログ

資産管理電卓(LineCalc)V1.2.16.0公開 [資産管理電卓(LineCalc)]

資産管理電卓(LineCalc)V1.2.16.0を公開しました。

https://linecalc.blog.ss-blog.jp/LineCalcDownload

・PRC での異常終了時お知らせ対応
・計算式エリア履歴対応
・関数定義ダイアログ参照定義対応
・WEBリソースキャッシュクリア対応

PRC で実行したときに配列のアクセスバイオレーションなどが発生して C# の例外でストップした場合お知らせも無く突然終了していましたが、お知らせを表示するようにしました。

{
 tmp[0] = 1, 
 prc(
  => {
   while(1,
    {
     sum = 0,
     ford(tag, tmp, sum = sum + tmp[tag])  // 外部配列 tmp をループ
    }
   ),
   delay(100)
  }
 ),
 while(1,
  {
   appenddim([rnd(1000)], tmp), // 並列に tmp に要素を付け足す
   delay(100)
  }
 )
}


上記では、 prc 内で tmp の要素全体にアクセス中に外部で要素数が変更されるため prc 内で例外が発生していずれバディングして止まります。
今までは、実行できているように見えていました。

これを実行できるようにするには、
{
 tmp[0] = 1, 
 lockv = 1,  // ロックオブジェクト定義
 prc(
  => {
   while(1,
    {
     sum = 0,
     lock(lockv, // tmp 操作中はロック
      ford(tag, tmp, sum = sum + tmp[tag])
     )
    }
   ),
   delay(100)
  }
 ), 
 while(1,
  {
   lock(lockv, // tmp 操作中はロック
    appenddim([rnd(1000)], tmp)
   ),
   delay(100)
  }
 )
}

上記のように lock 内部関数を使用します。
配列の要素を追加、変更して並列に参照されない場合ロックは必要ありません(配列1つ1つは別変数として扱われます)。配列全体を操作する場合や並列に同じ要素を参照、変更する場合ロックが必要になります。

計算エリアで CTRL+↑ CTRL+↓ で履歴を参照できるようになりました。
履歴は計算ボタンを押すごとに記録され50個まで記録されます。
同じ内容の履歴は記録されず順番だけ変更されます。
頭文字を入力して ALT+↑ ALT+↓ で先頭からカーソル位置までの文字に一致した履歴を検索して参照できるようにしました。

関数定義ダイアログで関数だけでなく、参照も定義できるようにしました。
関数定義ダイアログの右上の関数チェックボックスのチェックを外すと参照として定義され、内容は評価されず文字列として返されます。

メニュー設定->WEBリソースキャッシュクリア で WEB リソースで作成したキャッシュをクリアできるようになりました。
Edge 版の WEB リソースのみに対応しています。
Edge 版の WEB リソースはローカルの環境を作るのでキャッシュをクリアしても通常の Edge には影響しません。
キャッシュを消去するとローカル保存されたクッキーやその他情報は全て消去されます。
WEB リソースの動作が不安定になった場合やキャッシュファイルが多きくなりすぎた場合に実行すると動作が安定する可能性があります。
キャッシュファイルはログフォルダ内に作成されます。

資産管理電卓 v1.2.16.0 の説明は以上です。

コメント(0) 
共通テーマ:パソコン・インターネット

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。