森理 麟(moririring)のプログラマブログ

ゲームプログラマ森理 麟がのプログラムの話題を中心に書くブログです。

クッキーツイートの高速化 その6 遅いよりも問題な重い処理への対応 #CookieToEat

さて、前回ボタンを押せない状態にしました。

これでユーザーに「いま処理しているんだな」と気づいてもらえるでしょうか?

残念ながら、これだけで気づいてもらえることは少ないと思います。

極端にいえばこの対応は、処理をできなくする誤動作防止ぐらいの意味しかありません。


積極的にユーザーに処理中と気づいてもらいたいと思ったらもう少し別の対応が必要です。

分かりやすいのは、新しいフォームを表示することです。

動くものには目に行きやすいので、「処理中」と書くだけでもかなり分かりやすくなります。

しかし、処理中と分かってもらっても根本的な不満が解消出来ないと高速化とはいえません。


根本的な不満とは画面が真っ白になったり、応答なしになったりするあの状態です。

これは処理が遅いことよりも遥かに問題で、いわゆる「重い」と呼ばれる状態になります。

「重い」状態でも画面描画だけする方法もありますが、やはりこれもあまりと言えます。

森理としてはこの状態への対応は2つしかないと思っています。


その2つの方法とは「スルー」か「マルチスレッド化」です。

例えば社内アプリのように使う人が限られている場合、コストを考えればスルーも一つの手です。

しかし基本見知らぬ他人が使うような一般向けアプリの時点で重い実装は全て避けるべきです。

いよいよマルチスレッドの話です。次回ちょっと書き忘れていた別話です。