- 【GUI】wxWidgets(旧wxWindows) その5【サイザー】
658 :デフォルトの名無しさん[sage]:2014/08/26(火) 17:09:00.43 ID:QEgdFK7f - Windows で、
CrossBlock + MinGW + wxWidget で最も簡単な GUI アプリを基本プロジェクトで作成してみたところ、 MyTest.exe のサイズ:736KB (wxWidgetのDLL) wxmsw28u_gcc_custom.dll のサイズ : 15.9MB MyTest.exe のメモリ使用量 : 7,732KB // TaskManagerの表示 となった。 この基本アプリは、HelpでAboutでメッセージ・ボックスが表示できる ようになっているが、メニュー項目をクリックしてから実際にそれが 出るまで数秒かかる。実験したのはそこそこ速いマシンと速いWindows での事。
|
- 【GUI】wxWidgets(旧wxWindows) その5【サイザー】
659 :デフォルトの名無しさん[sage]:2014/08/26(火) 17:09:45.00 ID:QEgdFK7f - ただし、遅いのは最初の一回だけ。
一度でも表示すると後は速い。
|
- 【GUI】wxWidgets(旧wxWindows) その5【サイザー】
660 :デフォルトの名無しさん[sage]:2014/08/26(火) 17:56:51.72 ID:QEgdFK7f - Mailer の Thunderbird-Portable なんかもマルチプラットフォーム対応
だけど、起動がかなり遅い。これも巨大な dll を読み込んだりしてる からかな。 起動やメニュー操作が遅くなるのはマルチプラットフォーム化する代償 として負わされるのかも知れん。 こういうツールキットで軽快なアプリを作るのは難しいのかもな。
|
- 【GUI】wxWidgets(旧wxWindows) その5【サイザー】
662 :デフォルトの名無しさん[sage]:2014/08/26(火) 21:27:38.25 ID:QEgdFK7f - >>661
なるほど、スタティックリンクにすれば、起動後になってからユーザーの 命令に対する応答が遅れる事はなくなるかもしれない。 起動が遅くなるだけで済むんなら、そっちの方がストレスが少ないかも。
|
- 【GUI】wxWidgets(旧wxWindows) その5【サイザー】
664 :デフォルトの名無しさん[sage]:2014/08/26(火) 22:39:34.76 ID:QEgdFK7f - CrossBlockでは、monolithic タイプのライブラリをビルドしてから使う
ようになってるんだけど、それも遅い原因なのかな。 でも起動後にユーザー入力に対するレスポンスが遅いのはどう説明すれば いいんだろう? 普通の Windows の仕様だと原則、起動時に全ての DLL をロードする。 LoadLibrary()を使えば動的にロードすることも可能は可能だけど、 それをする必要は旧OSでサポートしてなかった新OSのDLLをロードする ような場合は、多言語化のサポートなど。 なるほど、多言語化のせいかも。_("xxx") みたいなのがあったから、 gettext を使ってる。それでリソースを動的ロードしているのか。
|