2019年07月09日
川俣晶の縁側ソフトウェアその他開発日誌 total 1450 count

Mega Pictures 2.0.5公開・データベース作成時の省メモリ、高速化

Written By: 川俣 晶連絡先

 修正内容は、大ざっぱに言えば【データベース作成時の省メモリ、高速化】【バグ取り】の2点。

 修正点の詳細は以下の通り。

 (呼ばれていないメソッドの除去などはリストに入れていない)

エクスターナルバックアップからリストアしたとき、ゲームキーワードが不整合になる §

 同期していないことが分かったので同期するように修正。

ゲームクリア時の画像回転を更に素早く §

 SEを鳴らす前に回転開始を指示するようにした。

 これで速くなったことを祈ろう。

プレイできないゲームの時、画像クリックで次の画像にいって欲しい §

 動画はゲームできないから、ゲーム開始では無く次の画像に進む。

ゲームをクリアしてもContinue扱いになる §

 一時セーブデータをクリアしていないバグだった。解消。

終了時にハングすることがある §

 Waitメソッドを除去してawaitにした。これでハングしないことを祈る。

新規作成画面で、パスが長いと次の行にはみ出す §

 サイズを制限した。またパス表示は右揃えに修正した。

作成中画面のテキストエリアにスクロールバーがない §

 付けた。

データベース作成中が良く分かる動き続けるサインが欲しい §

 ぐるぐるサインを付けた。

 またパス2の進捗バーも太くした。

次ゲームが不可能な時、動画クリックで次のゲームをスタートできるがプレイできないので積む §

 プレイできないようにした。

データベース作成後Closeをクリックして待たせすぎる。待たせても良いが待たせていることを分からせたい §

 待たせるのはゲームプレイ用のキーワード同期に時間が掛かるせいなのでぐるぐるサインを付けた。

メモリ節約 §

 データベース作成時のメモリ消費量を大幅に節約した。

 またデータベースの構造も小修正したので、従来バージョンから2.0.5への移行はできるが逆はできない。

Result text was exceeded 30000 charactersが2回出てくる §

 非同期にログサイズをチェックして警告を追加していると、2つ以上のスレッドが警告を書いてしまう可能性があった。ロックを導入して処理の同時実行をよくし。

雑感 §

「実は開発環境もVisual Studio 2017のままで劇的に新しいことはやっていない」

「単なるチューンとバグ取りだね」

「しかし、大規模データベースの作成処理の高速化が劇的だ」

「なぜ速くなったと思う?」

「メモリ消費量を減らしたらそれだけでどんどん速くなった。要するにメインメモリをスワップしなくなったということだと思うよ」

「今更時代遅れのUWPを改良することをどう思う?」

「時代遅れだから安心して改良できる。.NET Core 3アプリとかBlazorアプリとかだと、明日突然非互換変更が入るかも知れない怖さがあるので、とてもじゃないか作業はできない」

「注目されていないからこそ安定感があるって事だね」

「プラットフォームは安心してコードを書けてそれが資産になることが重要。面白がって変化が続く環境は良いプラットフォームではない」