🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
JavaFX

JavaFXとは、Java仮想マシン上で動作するリッチインターネットアプリケーション (RIA) のGUIライブラリです。Swingとは異なり、FXMLと呼ばれる XMLとCSSを併用してデザインを記述します。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

パフォーマンス

コード効率の向上や計算に関する質問には、このタグを使ってください。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

3回答

2070閲覧

Java バッテリー駆動PC 処理性能改善

yoko191210

総合スコア4

JavaFX

JavaFXとは、Java仮想マシン上で動作するリッチインターネットアプリケーション (RIA) のGUIライブラリです。Swingとは異なり、FXMLと呼ばれる XMLとCSSを併用してデザインを記述します。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

パフォーマンス

コード効率の向上や計算に関する質問には、このタグを使ってください。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2019/12/10 08:43

実現したいこと

Javaで開発中のアプリケーションが、
ノートPC(家電量販店等で購入できる一般なもの)で「バッテリー駆動時」も
「電源に接続」時と同等なパフォーマンスを出したい。

発生している問題

ノートPCを「バッテリー駆動」状態でクライアントアプリを稼働させると、
描画処理に遅延が発生してしまう。
※クライアントアプリを目視していると、データが歯抜けに見えてしまうことがある。

現在開発している質問の対象について

JavaFx WebViewを利用したWindowsクライアントアプリ(exeアプリ)

※本件はシステムのバージョンアップ時に発生した現象で、
現在リリースされているアプリは実害はなく動作しています。
Java6 Swingで構築

システムの全体像について

FX(投資)アプリのようなもので、
サーバサイドからクライアントへ対して、リアルタイムに情報を配信し、
クライアントから申込を行います。

クライアントアプリは静的なHTMLをサーバから取得し、
更新される情報はサーバ⇒クライアントへUDP送信しています。
※UDPデータの更新間隔は最短70ms。
UDPの1パケットには、画面へ描画する複数の情報が含まれています。

更新データの画面描画処理はJava⇒Javascriptをコールし、
描画処理を実施しています。

試したこと

①描画する内容を減らす。
⇒あまり効果は見られなかった。

②Java→Javascriptの関数をコールするのではなく、
Java→JavascriptへWebSocket(local内)で転送する。
⇒効果はあったが、完全に解消はできなかった。

そもそも「電源に接続」と「バッテリー駆動時」では
下記の処理を実行した場合に、「バッテリー駆動時」の方が
処理時間がかかることを確認。

「電源に接続」:50679ms
「バッテリー駆動時」:52273ms
※複数回試した結果、下記のような単純な処理でも1.5秒程度の差が発生する。

public class Main { public static void main(String[] args) { long startTime = System.currentTimeMillis(); System.out.println("開始:"+startTime); for(int i=0;i<1000;i++) { try { Thread.sleep(50); } catch (InterruptedException e) { // TODO 自動生成された catch ブロック e.printStackTrace(); } } long finTime = System.currentTimeMillis(); System.out.println("終了:"+finTime); System.out.println("処理時間:"+(finTime-startTime)); } }

Javaアプリの設計・コーディング時に考慮するべきこと、
WindowsのOS設定で「×××」を変更すれば良いなど
同様な問題に対応した方法など
解決に向けてお知恵をお借りしたいです。

補足情報(FW/ツールのバージョンなど)

OS:Windows10
言語:Java8
フレームワーク:JavaFx WebView

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

maisumakun

2019/12/10 08:52

フルパワーで稼働させるのは、自分のマシンでだけでいいでしょうか?
yoko191210

2019/12/10 09:33

提供しているサービスを利用する、全ユーザPCが対象となりますが、 設定変更で改善される可能性があればお教え頂きたいです。
guest

回答3

0

お使いのPCのドライバにもよりますが、

コントロール パネル > ハードウェアとサウンド > 電源オプション > プラン設定の編集

で選択されている電源オプションの、ビデオ出力パフォーマンスの設定が、電源接続とバッテリ駆動とで設定が異なってはいないでしょうか。

投稿2019/12/10 09:17

A-pZ

総合スコア12011

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

大抵の場合、バッテリー駆動とAC駆動だとパフォーマンス面の設定が変わるので確認してみてください。

投稿2019/12/10 10:17

semagya

総合スコア38

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

@ITにWindows 10の電源オプションに「高パフォーマンス」「究極のパフォーマンス」を追加するという記事が1年ほど前に出てました。

電源接続時と同じパフォーマンスまで上げられるかどうかは判りませんが、少なくとも通常のバッテリー駆動じよりも高いパフォーマンスが実現できそうな感じを受けます。
試してみては如何ですか?

投稿2019/12/10 09:23

coco_bauer

総合スコア6915

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yoko191210

2019/12/10 10:07

>デスクトップPC向けの機能であり、ノートPCなどのバッテリー駆動のPCでは有効にならないようになって>いる。 頂いたサイトを確認しましたが、上記のため 今回の要件は満たせなそうでした。
退会済みユーザー

退会済みユーザー

2019/12/10 10:21

高パフォーマンス は有効だよ
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問