JP2023510450A - アプレットページレンダリング方法、装置、電子機器、および記憶媒体 - Google Patents

アプレットページレンダリング方法、装置、電子機器、および記憶媒体 Download PDF

Info

Publication number
JP2023510450A
JP2023510450A JP2022524184A JP2022524184A JP2023510450A JP 2023510450 A JP2023510450 A JP 2023510450A JP 2022524184 A JP2022524184 A JP 2022524184A JP 2022524184 A JP2022524184 A JP 2022524184A JP 2023510450 A JP2023510450 A JP 2023510450A
Authority
JP
Japan
Prior art keywords
rendering
applet page
initial
page
incremental
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2022524184A
Other languages
English (en)
Other versions
JP7482223B2 (ja
Inventor
▲寧▼ 王
方 ▲じゃん▼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from CN202011573045.XA external-priority patent/CN112540806B/zh
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Publication of JP2023510450A publication Critical patent/JP2023510450A/ja
Application granted granted Critical
Publication of JP7482223B2 publication Critical patent/JP7482223B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44568Immediately runnable code

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)

Abstract

本発明は、アプレットページレンダリング方法、装置、電子機器、および記憶媒体を開示する。アプレットページレンダリング方法は、予め取得したアプレットページの初回描画結果に基づいて、アプレットページに対して、原始インクリメンタルレンダリングを行い、アプレットページの原始インクリメンタルレンダリング結果を取得することと、アプレットページの初回描画結果、アプレットページの原始インクリメンタルレンダリング結果および予め取得したアプレットページの初期インクリメンタルレンダリング結果に基づき、アプレットページをレンダリングすること、とを含む。

Description

本願は、アプレット技術のようなインターネット技術分野に関し、例えば、アプレットページレンダリング方法、装置、電子機器および記憶媒体に関する。
本願は、2020年12月25日に中国専利局に提出された出願番号が202011573045.Xである中国特許出願に対して優先権を主張するものであり、該出願の全ての内容を引用により本願に援用する。
アプレットの開発モードにおいて、開発者は、アプリケーション(Application、App)およびページ(Page)に固定したコールバック関数を登録することができ、アプレットは、既定された規則に従って開発者が登録したコールバック関数の実行をトリガし、これらのコールバック関数でアプレットのライフサイクルを構成する。アプレットは、AppレベルおよびPageレベルでいずれも固定したライフサイクルを有し、ここで、Pageレベルのライフサイクルは、業界では、主に、ページのロード関数のロード(onLoad)、ページの表示関数の傍受(onShow)、ページの初回レンダリング完了関数の傍受(onReady)、ページのアンロードの傍受(onUnload)が行われる。アプレットページが初めて起動されてロードされる場合、アプレットフレームワークは、onLoad、onShow、onReadyの順にこの3つのライフサイクルのコールバック関数を実行する。
ページを初めてロードする場合、現在のページに示す必要があるデータを取得するために、常に1つ目のライフサイクル関数でネットワーク要求を発信する等の関連操作が必要となり、且つ、アプレットにおけるデータをレンダリングするsetDataアプリケーションプログラムインタフェース(Application Programming Interface、API)を呼び出してデータのレンダリングを行い、最終的に完全な内容をページに示す。上記方式は、onLoadというライフサイクルでネットワーク要求を発信するが、onLoadは、実行をトリガできるためにページの初期データがロードされてレンダリングされるまで待つ必要があり、つまり、レンダリングスレッドが初回描画を完了して描画結果を論理スレッドに返送してから論理スレッドがonLoadの実行をトリガし、これにより、onLoadのトリガタイミングが遅くなり、最終的なページの内容のレンダリングを深刻に遅延させ、ユーザーエクスペリエンスに影響を与える。
本願は、アプレットページのロード速度を大幅に加速し、ページ性能を向上させ、ユーザーエクスペリエンスを最適化することができるアプレットページレンダリング方法、装置、電子機器および記憶媒体を提供する。
予め取得したアプレットページの初回描画結果に基づいて前記アプレットページに対して原始インクリメンタルレンダリング(original increment rendering)を行い、前記アプレットページの原始インクリメンタルレンダリング結果を取得することと、
前記アプレットページの初回描画結果、前記アプレットページの原始インクリメンタルレンダリング結果および予め取得した前記アプレットページの初期インクリメンタルレンダリング(initial increment rendering)結果に基づき、前記アプレットページをレンダリングすることと、を含む、
アプレットページレンダリング方法、を提供する。
インクリメンタル描画モジュールとレンダリングモジュールとを備えるアプレットページレンダリング装置であって、
前記インクリメンタル描画モジュールは、予め取得したアプレットページの初回描画結果に基づいて前記アプレットページに対して原始インクリメンタルレンダリングを行い、前記アプレットページの原始インクリメンタルレンダリング結果を取得するように構成され、
前記レンダリングモジュールは、前記アプレットページの初回描画結果、前記アプレットページの原始インクリメンタルレンダリング結果および予め取得した前記アプレットページの初期インクリメンタルレンダリング結果に基づき、前記アプレットページをレンダリングするように構成される、
アプレットページレンダリング装置、を更に提供する。
少なくとも1つのプロセッサと、前記少なくとも1つのプロセッサに通信接続されたメモリとを備える電子機器であって、
前記メモリには、前記少なくとも1つのプロセッサによって実行可能な命令が記憶され、
前記命令は、前記少なくとも1つのプロセッサが上記アプレットページレンダリング方法を実行可能であるように、前記少なくとも1つのプロセッサにより実行される、
電子機器、を更に提供する。
コンピュータ命令が記憶された非一時的コンピュータ可読記憶媒体であって、
前記コンピュータ命令は、コンピュータに実行されて上記アプレットページレンダリング方法を実現する、
非一時的コンピュータ可読記憶媒体、を更に提供する。
コンピュータプログラムを含むコンピュータプログラム製品であって、
前記コンピュータプログラムがプロセッサにより実行されると、上記アプレットページレンダリング方法を実現する、
コンピュータプログラム製品、を更に提供する。
本願の実施例に係るアプレットページレンダリング方法のフローチャートである。 本願の実施例に係るアプレットページレンダリング方法のフローチャートである。 本願の実施例に係るライフサイクルの起動のフローチャートである。 本願の実施例に係るアプレットページレンダリング効果の模式図である。 本願の実施例に係るアプレットページレンダリング装置の構造模式図である。 本願の実施例に係るアプレットページロード方法を実現するための電子機器の概略ブロック図である。
以下、図面を参照しながら本発明の例示的な実施例について説明する。ここで、理解の便宜上、本発明の実施例に係る様々な細かい内容まで含まれているが、例示的なものに過ぎないと理解すべきである。以下の説明において、公知されている機能および構造の説明は、省略している。
実施例1
図1は、本願の実施例に係るアプレットページレンダリング方法のフローチャートであり、該方法は、アプレットページレンダリング装置または電子機器により実行でき、該装置または電子機器は、ソフトウェアおよび/またはハードウェアの方式で実現でき、該装置または電子機器は、ネットワーク通信機能を持つ任意のスマートデバイスに集積できる。図1に示すように、アプレットページレンダリング方法は、以下のステップを含んでもよい。
S101において、予め取得したアプレットページの初回描画結果に基づいてアプレットページに対して原始インクリメンタルレンダリングを行い、アプレットページの原始インクリメンタルレンダリング結果を取得する。
本ステップにおいて、電子機器は、予め取得したアプレットページの初回描画結果に基づいてアプレットページに対して原始インクリメンタルレンダリングを行い、アプレットページの原始インクリメンタルレンダリング結果を取得することができる。電子機器は、予め取得したアプレットページの初回描画結果に基づき、まず、アプレットページに対して原始インクリメンタルレンダリングを行うことをトリガするメッセージを生成し、その後、アプレットページに対して原始インクリメンタルレンダリングを行うことをトリガするメッセージに基づいて、アプレットページに対して原始インクリメンタル描画レンダリングを行い、アプレットページの原始インクリメンタルレンダリング結果を取得することができる。
本願の具体例において、電子機器は、予め取得したアプレットページの初回描画結果に基づいてアプレットページに対して原始インクリメンタルレンダリングを行い、アプレットページの原始インクリメンタルレンダリング結果を取得する前に、アプレットページの初回描画結果を予め取得してもよい。電子機器は、ユーザからのアプレットページの開く命令に応答して、アプレットページの論理コードおよびページスタイルファイルをロードし、アプレットページの論理コードのロード結果およびアプレットページのページスタイルファイルのロード結果を取得し、その後、アプレットページの論理コードのロード結果から、アプレットページをレンダリングするための初期データを抽出し、更に、アプレットページのページスタイルファイルのロード結果およびアプレットページをレンダリングするための初期データに基づいてアプレットページを初回描画し、アプレットページの初回描画結果を取得することができる。
アプレットの基盤となるフレームワークはデュアルスレッドアーキテクチャであり、該デュアルスレッドアーキテクチャは、論理スレッドおよびレンダリングスレッドを含み、ここで、論理スレッドは、アプレット開発者が作成したコードを実行することに用いられ、レンダリングスレッドは、ユーザが視認可能な内容をレンダリングして示すことに用いられる。アプレットが起動された後に、アプレットの基盤となるフレームワークは、規則に従ってアプレットページのライフサイクルをトリガし、該ライフサイクルには開発者が作成したコードが含まれる。本願の具体的な実施例において、電子機器は、ユーザからのアプレットページの開く命令に応答して、レンダリングスレッドによりアプレットページを初回描画し、アプレットページの初回描画結果を取得することができる。電子機器は、まず、論理スレッドおよびレンダリングスレッドにより、アプレットページの論理コードおよびページスタイルファイルをそれぞれロードし、アプレットページの論理コードのロード結果およびアプレットページのページスタイルファイルのロード結果を取得し、その後、論理スレッドにより、アプレットページの論理コードのロード結果から、アプレットページをレンダリングするための初期データを抽出し、また、論理スレッドにより、アプレットページをレンダリングするための初期データをレンダリングスレッドに送信し、更に、アプレットページのページスタイルファイルのロード結果およびアプレットページをレンダリングするための初期データに基づき、レンダリングスレッドによりアプレットページを初回描画し、アプレットページの初回描画結果を取得することができる。
S102において、アプレットページの初回描画結果、アプレットページの原始インクリメンタルレンダリング結果および予め取得したアプレットページの初期インクリメンタルレンダリング結果に基づき、アプレットページをレンダリングする。
本ステップにおいて、電子機器は、アプレットページの初回描画結果、アプレットページの原始インクリメンタルレンダリング結果および予め取得したアプレットページの初期インクリメンタルレンダリング結果に基づき、アプレットページをレンダリングすることができる。本願は、元々onLoadで実行されるコードを、onLoadに保留されたコードおよびonlnitで予め実行されたコードという2つの部分に分け、ここで、onlnitで予め実行されたコードは、初回描画結果に依存しなくても実行できるものであり、onLoadに保留されたコードは、初回描画結果に依存して実行できるものである。従い、本願は、初回描画結果に依存しないコードを予め実行することができ、これにより、初回描画結果に依存するコードおよび初回描画結果に依存しないコードを全てonLoadで実行する必要がなく、従い、関連技術と比べ、本願は、ページのレンダリング時間を短縮し、ロード効率を向上させることができる。
本願の実施例に係るアプレットページレンダリング方法は、まず、予め取得したアプレットページの初回描画結果に基づいてアプレットページに対して原始インクリメンタルレンダリングを行い、アプレットページの原始インクリメンタルレンダリング結果を取得し、その後、アプレットページの初回描画結果、アプレットページの原始インクリメンタルレンダリング結果および予め取得したアプレットページの初期インクリメンタルレンダリング結果に基づき、アプレットページをレンダリングする。つまり、本願は、アプレットページの初期インクリメンタルレンダリング結果を予め取得し、その後、アプレットページの初回描画結果、アプレットページの原始インクリメンタルレンダリング結果およびアプレットページの初期インクリメンタルレンダリング結果に基づき、アプレットページをレンダリングすることができる。本願は、onLoad、onShow、onReadyおよびonUnloadで構成されるライフサイクルに1つの関数onlnitを追加し、onlnitにより、onLoadにおける一部のコードを予め実行することができ、初回描画結果に依存するコードおよび初回描画結果に依存しないコードを全てonLoadで実行する必要がない。関数onlnitが追加されていないアプレットページレンダリング方法において、初回描画結果に依存するコードおよび初回描画結果に依存しないコードを全てonLoadで実行する。本願は、onlnitにより初回描画結果に依存しないコードを予め実行する技術手段を採用するため、関連技術におけるレンダリングスレッドが初回描画を完了して描画結果を論理スレッドに返送してから論理スレッドがonLoadの実行をトリガし、これにより、onLoadのトリガタイミングが遅くなり、最終的なページの内容のレンダリングを深刻に遅延させ、ユーザーエクスペリエンスに影響を与えるという技術的問題を克服し、本願に係る技術案は、アプレットページのロード速度を大幅に加速し、ページ性能を向上させ、ユーザーエクスペリエンスを最適化することができ、更に、本願の実施例の技術案は、簡単に実現でき、普及しやすく、適用範囲がより広い。
実施例2
図2は、本願の実施例に係るアプレットページレンダリング方法のフローチャートである。上記技術案に基づいて説明し、且つ、上記好ましい実施形態と合わせることができる。図2に示すように、アプレットページレンダリング方法は、以下のステップを含んでもよい。
S201において、ユーザからのアプレットページの開く命令に応答して、アプレットページの論理コードおよびページスタイルファイルをロードし、アプレットページの論理コードのロード結果およびアプレットページのページスタイルファイルのロード結果を取得する。
本ステップにおいて、電子機器は、ユーザからのアプレットページの開く命令に応答して、アプレットページの論理コードおよびページスタイルファイルをロードし、アプレットページの論理コードのロード結果およびアプレットページのページスタイルファイルのロード結果を取得する。電子機器は、ユーザからのアプレットページの開く命令に応答して、論理スレッドおよびレンダリングスレッドにより、アプレットページの論理コードおよびページスタイルファイルをそれぞれロードし、アプレットページの論理コードのロード結果およびアプレットページのページスタイルファイルのロード結果を取得することができる。アプレットページのページスタイルファイルは、少なくとも、ロードされるページのテンプレートおよびスタイルファイルを含んでもよく、即ち、ユーザがアプレットをクリックすると、電子機器は、論理スレッドによりアプレットページの論理コードをロードし、アプレットページの論理コードのロード結果を取得し、レンダリングスレッドによりアプレットページのテンプレートおよびスタイルファイルをロードし、アプレットページのテンプレートおよびスタイルファイルのロード結果を取得することができる。
S202において、アプレットページの論理コードのロード結果から、アプレットページをレンダリングするための初期データを抽出する。
本ステップにおいて、電子機器は、アプレットページの論理コードのロード結果から、アプレットページをレンダリングするための初期データを抽出することができる。電子機器は、論理スレッドにより、アプレットページの論理コードのロード結果から、アプレットページをレンダリングするための初期データを抽出し、論理スレッドにより、アプレットページをレンダリングするための初期データをレンダリングスレッドに送信することができる。電子機器は、onlnitのコードからアプレットページをレンダリングするための初期データ(initData)を抽出し、且つ、論理スレッドにより、初期データ(initData)をレンダリングスレッドに送信することができる。
S203において、アプレットページのページスタイルファイルのロード結果およびアプレットページをレンダリングするための初期データに基づいてアプレットページを初回描画し、アプレットページの初回描画結果を取得する。
本ステップにおいて、電子機器は、アプレットページのページスタイルファイルのロード結果およびアプレットページをレンダリングするための初期データに基づいてアプレットページを初回描画し、アプレットページの初回描画結果を取得することができる。電子機器は、アプレットページのページスタイルファイルのロード結果およびアプレットページをレンダリングするための初期データに基づき、レンダリングスレッドによりアプレットページを初回描画し、アプレットページの初回描画結果を取得することができる。電子機器は、レンダリングスレッドにより論理スレッドから送信されたinitDataを受信した後に、レンダリングスレッドによりアプレットページを初回描画し、アプレットページの初回描画結果を取得する。onlnitのタイミングが非常に早いため、onlnitのライフサイクル中からsetDataをレンダリングスレッドに発信する場合、レンダリングスレッドが初回描画を完了していない可能性があり、これにより、setDataの順序が混乱するという問題が存在する。そのため、setData内のデータおよびコールバック関数は、1対1で対応して実行順序を厳格に保証する必要がある。
setDataはアプレットのAPIであり、1つ目のパラメータはデータに導入でき、2つ目のパラメータはコールバック関数に導入でき、本回のsetDataのレンダリングが完了した直後にコールバック関数が実行されることを表す。setDataの実行順序を厳密に保証する必要があるため、本願は、setDataがインクリメンタルレンダリングを引き起こすメカニズムを最適化する必要がある。最適化方式は、レンダリングスレッドにキャッシュキューを設けるという方式であり、キャッシュキューは、1つの先入れ先出しのデータ構造であり、レンダリングスレッドは、全てのsetDataを受信すると、まず、ページのレンダリング状態を判断し、初回のレンダリングが完了した場合、キャッシュキューにメッセージを送信し、キャッシュキューはキャッシュされたsetData情報を順に並べて実行し、順序付けられたインクリメンタル描画レンダリングを実現する。
本願に係るPageレベルのライフサイクルは、onInit、onLoad、onShow、onReady、onUnloadを含んでもよい。論理スレッドは、上記各関数に関してレンダリングスレッドに1つのsetDataメッセージをそれぞれ送信し、レンダリングスレッドは、それぞれのsetDataメッセージを受信した後に、アプレットページに対してそれぞれインクリメンタル描画レンダリングを行う。論理スレッドは、上記各関数に関して、まず、それぞれデータを取得し、その後、取得したデータをsetDataメッセージにパッケージし、更に、setDataメッセージをレンダリングスレッドに送信する。例えば、論理スレッドは、onInitに関してonInitに対応するサーバにネットワーク要求を発信し、その後、onInitに対応するサーバは論理スレッドにonInitのデータを返信し、論理スレッドはonLoadに関してonLoadに対応するサーバにネットワーク要求を発信し、その後、onLoadに対応するサーバは論理スレッドにonLoadのデータを返信する。
本願の具体例において、元々onLoadで実行されたコードを、onLoadに保留されたコードおよびonInitで予め実行されたコードという2つの部分に分ける。ここで、onInitで予め実行されたコードは、初回描画結果に依存しなくても実行できるものであり、onLoadに保留されたコードは、初回描画結果に依存して実行できるものである。従い、本願は、初回描画結果に依存しないコードを予め実行することができ、これにより、初回描画結果に依存するコードおよび初回描画結果に依存しないコードを全てonLoadで実行する必要がない。つまり、onInitの実行時にレンダリングスレッドが初回描画を完了した情報を受信していないため、onInitのライフサイクル中でコードを実行するのは、onLoadと比べていくつかの制限が存在し、主な制限は、ビューの内容に依存するいかなるAPIを呼び出すことができないことであり、これらのAPIは、コンポーネント内の1つのサブコンポーネント(selectComponent)の検索、コンポーネント内の全てのサブコンポーネント(selectAllComponents)の検索、ビュー照会オブジェクト(createSelectorQuery)の作成、ページ上の1つのマップコンポーネントのコンテキストオブジェクト(createMapContext)の取得、ページ上の1つのカメラコンポーネントのコンテキストオブジェクト(createCameraContext)の取得、ページ上の1つのキャンバスコンポーネントのコンテキストオブジェクト(createCanvasContext)の取得を含んでもよいが、これらに限定されない。
本願の具体例において、電子機器は、論理スレッドによりアプレットページの論理コードのロード結果から、アプレットページをレンダリングするための初期データを抽出した後に、更に、論理スレッドによりアプレットページに対して初期インクリメンタルレンダリングを行うことをトリガするメッセージを生成し、且つ、論理スレッドによりアプレットページに対して初期インクリメンタルレンダリングを行うことをトリガするメッセージをレンダリングスレッドに送信し、レンダリングスレッドに、アプレットページに対して初期インクリメンタルレンダリングを行うことをトリガするメッセージに基づいて、アプレットページに対して初期インクリメンタル描画レンダリングを行わせ、ページ初期関数の傍受に対応する初期インクリメンタルレンダリング結果を取得することもできる。電子機器は、論理スレッドによりアプレットページに対して初期インクリメンタルレンダリングを行うことをトリガするメッセージを生成するとき、まず、サーバにおいてアプレットページに対して初期インクリメンタルレンダリングを行うことをトリガするメッセージを生成するデータを取得し、その後、アプレットページに対して初期インクリメンタルレンダリングを行うことをトリガするメッセージのデータに基づき、アプレットページに対して初期インクリメンタルレンダリングを行うことをトリガするメッセージを生成することができる。電子機器は、まず、論理スレッドによりページ初期関数の傍受の実行をトリガし、ページ初期関数の傍受の実行結果を取得し、その後、ページ初期関数の傍受の実行結果に基づき、ページ初期関数の傍受に対応するサーバにおいて、アプレットページに対して初期インクリメンタルレンダリングを行うことをトリガするメッセージを生成するデータを取得し、更に、アプレットページに対して初期インクリメンタルレンダリングを行うことをトリガするメッセージを生成するデータおよび予め確定されたページ初期関数の傍受に対応するコールバック関数を、アプレットページに対して初期インクリメンタルレンダリングを行うことをトリガするメッセージを生成するようにパッケージする。
本願の具体例において、アプレットページに対して初期インクリメンタルレンダリングを行うことをトリガするメッセージを受信した際にアプレットページの初回描画結果を取得していない場合、電子機器は、アプレットページに対して初期インクリメンタルレンダリングを行うことをトリガするメッセージをキャッシュキューに送信し、その後、キャッシュキューに基づいてアプレットページに対して初期インクリメンタル描画レンダリングを行い、アプレットページの初期インクリメンタルレンダリング結果を取得することができる。アプレットページに対して初期インクリメンタルレンダリングを行うことをトリガするメッセージを受信した際にアプレットページの初回描画結果を取得した場合、電子機器は、直接アプレットページに対して初期インクリメンタルレンダリングを行うことをトリガするメッセージに基づいて、アプレットページに対して初期インクリメンタル描画レンダリングを行い、アプレットページの初期インクリメンタルレンダリング結果を取得することができる。レンダリングスレッドによりアプレットページに対して初期インクリメンタルレンダリングを行うことをトリガするメッセージを受信した際にアプレットページの初回描画結果を取得していない場合、電子機器は、アプレットページに対して初期インクリメンタルレンダリングを行うことをトリガするメッセージをレンダリングスレッドのキャッシュキューに送信し、レンダリングスレッドにキャッシュキューに基づいてアプレットページに対して初期インクリメンタル描画レンダリングを行わせ、アプレットページの初期インクリメンタルレンダリング結果を取得することができる。レンダリングスレッドによりアプレットページに対して初期インクリメンタルレンダリングを行うことをトリガするメッセージを受信した際にアプレットページの初回描画結果を取得した場合、電子機器は、アプレットページに対して初期インクリメンタルレンダリングを行うことをトリガするメッセージを直接レンダリングスレッドに送信し、レンダリングスレッドにアプレットページに対して初期インクリメンタルレンダリングを行うことをトリガするメッセージに基づいて、アプレットページに対して初期インクリメンタル描画レンダリングを行わせ、アプレットページの初期インクリメンタルレンダリング結果を取得することができる。
S204において、予め取得したアプレットページの初回描画結果に基づいてアプレットページに対して原始インクリメンタルレンダリングを行い、アプレットページの原始インクリメンタルレンダリング結果を取得する。
本ステップにおいて、電子機器は、予め取得したアプレットページの初回描画結果に基づいてアプレットページに対して原始インクリメンタルレンダリングを行い、アプレットページの原始インクリメンタルレンダリング結果を取得することができる。電子機器は、予め取得したアプレットページの初回描画結果に基づき、まず、アプレットページに対して原始インクリメンタルレンダリングを行うことをトリガするメッセージを生成し、その後、アプレットページに対して原始インクリメンタルレンダリングを行うことをトリガするメッセージに基づいてアプレットページに対して原始インクリメンタル描画レンダリングを行い、アプレットページの原始インクリメンタルレンダリング結果を取得することができる。
S205において、アプレットページの初回描画結果、アプレットページの原始インクリメンタルレンダリング結果および予め取得したアプレットページの初期インクリメンタルレンダリング結果に基づき、アプレットページをレンダリングする。
図3は、本願の実施例に係るライフサイクルの起動のフローチャートである。図3に示すように、電子機器は、ユーザからのアプレットページの開く命令に応答して、論理スレッドおよびレンダリングスレッドにより、アプレットページの論理コードおよびページスタイルファイルをそれぞれロードし、アプレットページの論理コードのロード結果およびアプレットページのページスタイルファイルのロード結果を取得し、その後、論理スレッドにより、アプレットページの論理コードのロード結果から、アプレットページをレンダリングするための初期データ(initData)を抽出し、更に、論理スレッドにより、アプレットページをレンダリングするための初期データ(initData)をレンダリングスレッドに送信し、アプレットページのページスタイルファイルのロード結果およびアプレットページをレンダリングするための初期データ(initData)に基づき、レンダリングスレッドによりアプレットページを初回描画し、アプレットページの初回描画結果を取得し、更に、レンダリングスレッドによりアプレットページの初回描画結果を論理スレッドに送信することができ、論理スレッドはアプレットページの初回描画結果に基づいてonLoadの実行をトリガする。
本願は、ライフサイクルに1つのページ初期関数の傍受(onlnit)を追加し、即ち、Pageレベルのライフサイクルは、onlnit、onLoad、onShow、onReady、onUnloadを含む。論理スレッドは、上記各関数に関してレンダリングスレッドに1つのsetDataメッセージをそれぞれ送信し、レンダリングスレッドは、それぞれのsetDataメッセージを受信した後に、アプレットページに対してそれぞれインクリメンタル描画レンダリングを行う。例えば、論理スレッドは、onlnitに関してレンダリングスレッドに1つのonlnitに対応するsetDataメッセージを送信し、レンダリングスレッドは、onlnitに対応するsetDataメッセージを受信した後に、onlnitに対応するsetDataメッセージに基づいてインクリメンタル描画レンダリングを行う。更に、例えば、論理スレッドは、onLoadに関してレンダリングスレッドに1つのonLoadに対応するsetDataメッセージを送信し、レンダリングスレッドは、onLoadに対応するsetDataメッセージを受信した後に、onLoadに対応するsetDataメッセージに基づいてインクリメンタル描画レンダリングを行う。
図4は、本願の実施例に係るアプレットページレンダリング効果の模式図である。図4に示すように、本願に係る技術案を用い、ライフサイクルonlnitでページのデータを要求すると、ページのロード速度を大幅に加速し、ページの性能表現を向上させることができる。本実施例において、それぞれアプレットA、アプレットBおよびアプレットCという3つのアプレット製品で該ライフサイクルを使用した。アプレットAは、210msの収益を得ることができ、アプレットBは、100msの収益を得ることができ、アプレットCは、150msの収益を得ることができる。
本願の実施例に係るアプレットページレンダリング方法は、まず、予め取得したアプレットページの初回描画結果に基づいてアプレットページに対して原始インクリメンタルレンダリングを行い、アプレットページの原始インクリメンタルレンダリング結果を取得し、その後、アプレットページの初回描画結果、アプレットページの原始インクリメンタルレンダリング結果および予め取得したアプレットページの初期インクリメンタルレンダリング結果に基づき、アプレットページをレンダリングする。つまり、本願は、アプレットページの初期インクリメンタルレンダリング結果を予め取得し、その後、アプレットページの初回描画結果、アプレットページの原始インクリメンタルレンダリング結果およびアプレットページの初期インクリメンタルレンダリング結果に基づき、アプレットページをレンダリングすることができる。本願は、onLoad、onShow、onReadyおよびonUnloadで構成されるライフサイクルに1つの関数onlnitを追加し、onlnitにより、onLoadにおける一部のコードを予め実行することができ、初回描画結果に依存するコードおよび初回描画結果に依存しないコードを全てonLoadで実行する必要がない。関数onlnitが追加されていないアプレットページレンダリング方法において、初回描画結果に依存するコードおよび初回描画結果に依存しないコードを全てonLoadで実行する。本願は、onlnitにより初回描画結果に依存しないコードを予め実行する技術手段を採用するため、関連技術におけるレンダリングスレッドが初回描画を完了して描画結果を論理スレッドに返送してから論理スレッドがonLoadの実行をトリガし、これにより、onLoadのトリガタイミングが遅くなり、最終的なページの内容のレンダリングを深刻に遅延させ、ユーザーエクスペリエンスに影響を与えるという技術的問題を克服し、本願に係る技術案は、アプレットページのロード速度を大幅に加速し、ページ性能を向上させ、ユーザーエクスペリエンスを最適化することができ、更に、本願の実施例の技術案は、簡単に実現でき、普及しやすく、適用範囲がより広い。
実施例3
図5は、本願の実施例に係るアプレットページレンダリング装置の構造模式図である。図5に示すように、前記装置500は、インクリメンタル描画モジュール501とレンダリングモジュール502とを備える。ここで、前記インクリメンタル描画モジュール501は、予め取得したアプレットページの初回描画結果に基づいて前記アプレットページに対して原始インクリメンタルレンダリングを行い、前記アプレットページの原始インクリメンタルレンダリング結果を取得するように構成される。前記レンダリングモジュール502は、前記アプレットページの初回描画結果、前記アプレットページの原始インクリメンタルレンダリング結果および予め取得した前記アプレットページの初期インクリメンタルレンダリング結果に基づき、前記アプレットページをレンダリングするように構成される。
前記インクリメンタル描画モジュール501は、予め取得したアプレットページの初回描画結果に基づいて前記アプレットページに対して原始インクリメンタルレンダリングを行うことをトリガするメッセージを生成し、前記アプレットページに対して原始インクリメンタルレンダリングを行うことをトリガする前記メッセージに基づいて、前記アプレットページに対して原始インクリメンタル描画レンダリングを行い、前記アプレットページの原始インクリメンタルレンダリング結果を取得するように構成される。
前記装置は、ユーザからの前記アプレットページの開く命令に応答して、前記アプレットページの論理コードおよびページスタイルファイルをロードし、前記アプレットページの論理コードのロード結果および前記アプレットページのページスタイルファイルのロード結果を取得し、前記アプレットページの論理コードのロード結果から、前記アプレットページをレンダリングするための初期データを抽出し、前記アプレットページのページスタイルファイルのロード結果および前記アプレットページをレンダリングするための前記初期データに基づいて前記アプレットページを初回描画し、前記アプレットページの初回描画結果を取得するように構成される初回描画モジュール503(図示せず)を更に備える。
前記インクリメンタル描画モジュール501は、前記アプレットページに対して初期インクリメンタルレンダリングを行うことをトリガするメッセージを生成し、前記アプレットページに対して初期インクリメンタルレンダリングを行うことをトリガする前記メッセージに基づいて、前記アプレットページに対して初期インクリメンタル描画レンダリングを行い、前記アプレットページの初期インクリメンタルレンダリング結果を取得するように構成される。
前記インクリメンタル描画モジュール501は、サーバにおいて前記アプレットページに対して初期インクリメンタルレンダリングを行うことをトリガする前記メッセージを生成するデータを取得し、前記アプレットページに対して初期インクリメンタルレンダリングを行うことをトリガするメッセージの前記データに基づき、前記アプレットページに対して初期インクリメンタルレンダリングを行うことをトリガする前記メッセージを生成することにより、前記アプレットページに対して初期インクリメンタルレンダリングを行うことをトリガするメッセージを生成するように構成される。
前記インクリメンタル描画モジュール501は、前記アプレットページに対して初期インクリメンタルレンダリングを行うことをトリガする前記メッセージを受信した際に前記アプレットページの初回描画結果を取得していない場合、前記アプレットページに対して初期インクリメンタルレンダリングを行うことをトリガする前記メッセージをキャッシュキューに送信し、前記キャッシュキューに基づいて前記アプレットページに対して初期インクリメンタル描画レンダリングを行い、前記アプレットページの初期インクリメンタルレンダリング結果を取得し、前記アプレットページに対して初期インクリメンタルレンダリングを行うことをトリガする前記メッセージを受信した際に前記アプレットページの初回描画結果を取得した場合、直接に前記アプレットページに対して初期インクリメンタルレンダリングを行うことをトリガする前記メッセージに基づいて、前記アプレットページに対して初期インクリメンタル描画レンダリングを行い、前記アプレットページの初期インクリメンタルレンダリング結果を取得することにより、前記アプレットページに対して初期インクリメンタル描画レンダリングを行い、前記アプレットページの初期インクリメンタルレンダリング結果を取得するように構成される。
上記アプレットページレンダリング装置は、本願のいずれかの実施例に係る方法を実行することができ、方法の実行に対応する機能モジュールおよび効果を備える。本実施例で詳しく説明されていない技術詳細は、本願のいずれかの実施例に係るアプレットページレンダリング方法を参照することができる。
実施例4
本願の実施例によれば、本願は、電子機器、可読記憶媒体およびコンピュータプログラム製品を更に提供する。
図6は、本願の実施例に係るアプレットページロード方法を実現するための電子機器の概略ブロック図である。電子機器600は、ラップトップ型コンピュータ、デスクトップ型コンピュータ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータのような様々な形式のデジタルコンピュータを表すことを目的とする。電子機器600は、携帯端末、携帯電話、スマートフォン、ウェアラブル機器および他の類似する計算装置のような様々な形式の移動装置を表すこともできる。本発明に示されたコンポーネント、それらの接続、関係、およびそれらの機能は例示的なものに過ぎず、本発明に記載および/または要求される本発明の実現を限定するものではない。
図6に示すように、電子機器600は、計算ユニット601を備え、読み出し専用メモリ(Read-Only Memory、ROM)602に記憶されたコンピュータプログラム、または記憶ユニット608からランダムアクセスメモリ(Random Access Memory、RAM)603にロードされたコンピュータプログラムに基づき、様々な適当な動作および処理を実行することができる。RAM 603には、電子機器600の操作に必要な様々なプログラムおよびデータが記憶されてもよい。計算ユニット601、ROM 602およびRAM 603は、バス604を介して互いに接続されている。入力/出力(Input/Output、I/O)インタフェース605もバス604に接続されている。
電子機器600における複数のコンポーネントはI/Oインタフェース605に接続され、キーボード、マウス等のような入力ユニット606と、各種のディスプレイ、スピーカ等のような出力ユニット607と、磁気ディスク、光ディスク等のような記憶ユニット608と、ネットワークカード、モデム、無線通信送受信機等のような通信ユニット609とを備える。通信ユニット609は、電子機器600がインターネットのようなコンピュータネットワークおよび/または様々な電気通信ネットワークを介して他のデバイスと情報/データを交換することを許容する。
計算ユニット601は、処理および計算能力を有する汎用および/または専用の処理アセンブリであってもよい。計算ユニット601のいくつかの例は、中央処理ユニット(Central Processing Unit、CPU)、グラフィックス処理ユニット(Graphics Processing Unit、GPU)、各種の専用の人工知能(Artificial Intelligence、AI)コンピューティングチップ、各種の機械学習モデルアルゴリズムを実行する計算ユニット、デジタルシグナルプロセッサ(Digital Signal Processor、DSP)、および任意の適当なプロセッサ、コントローラ、マイクロコントローラ等を含んでもよいが、これらに限定されない。計算ユニット601は、上記様々な方法および処理、例えば、ブロックチェーンに基づくグループトラフィックの実現方法を実行する。例えば、いくつかの実施例において、ブロックチェーンに基づくグループトラフィックの実現方法は、コンピュータソフトウェアプログラムとして実現でき、有形的に記憶ユニット608のような機器可読媒体に含まれている。いくつかの実施例において、コンピュータプログラムの一部または全ては、ROM 602および/または通信ユニット609を介してデバイス600にロードおよび/またはインストールされ得る。コンピュータプログラムがRAM 603にロードされて計算ユニット601により実行されると、上記ブロックチェーンに基づくグループトラフィックの実現方法の1つまたは複数のステップを実行することができる。あるいは、他の実施例において、計算ユニット601は、他の任意の適当な方式(例えば、ファームウェアを介して)により、ブロックチェーンに基づくグループトラフィックの実現方法を実行するように構成され得る。
本発明に記載されたシステムおよび技術の様々な実施形態は、デジタル電子回路システム、集積回路システム、フィールドプログラマブルゲートアレイ(Field Programmable Gate Array、FPGA)、特定用途向け集積回路(Application Specific Integrated Circuit、ASIC)、特定用途向け標準パーツ(Application Specific Standard Parts、ASSP)、システムオンチップのシステム(System on Chip、SoC)、複合プログラマブル論理デバイス(Complex Programming Logic Device、CPLD)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/または、それらの組み合わせで実現できる。これらの様々な実施形態は以下を含んでもよい。1つまたは複数のコンピュータプログラムに実施され、該1つまたは複数のコンピュータプログラムは、少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステムで実行および/または解釈することができ、該プログラマブルプロセッサは、ストレージシステム、少なくとも1つの入力装置、および少なくとも1つの出力装置からデータおよび命令を受信し、且つデータおよび命令を、該ストレージシステム、該少なくとも1つの入力装置、および該少なくとも1つの出力装置に伝送することができる専用または汎用のプログラマブルプロセッサであってもよい。
本発明の方法を実施するためのプログラムコードは、1つまたは複数のプログラミング言語の任意の組み合わせでコードできる。これらのプログラムコードは、汎用コンピュータ、専用コンピュータ、または他のプログラマブルデータ処理装置のプロセッサまたはコントローラに提供でき、これにより、プログラムコードがプロセッサまたはコントローラにより実行されると、フローチャートおよび/またはブロック図で規定された機能/操作が実施される。プログラムコードは、完全に機器で実行されてもよいし、一部が機器で実行されてもよいし、独立したソフトウェアパッケージとして一部が機器で実行されて一部がリモート機器で実行されてもよいし、完全にリモート機器またはサーバで実行されてもよい。
本発明の明細書において、機器可読媒体は、命令実行システム、装置またはデバイスに使用される、または命令実行システム、装置またはデバイスと合わせて使用されるプログラムを含有または記憶できる有形的な媒体であってもよい。機器可読媒体は、機器可読信号媒体または機器可読記憶媒体であってもよい。機器可読媒体は、電子の、磁気の、光の、電磁気の、赤外線の、または半導体のシステム、装置またはデバイス、または上記内容の任意の適当な組み合わせを含んでもよいが、これらに限定されない。機器可読記憶媒体の更なる具体的な例は、1つまたは複数の線による電気的接続、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、消去可能なプログラマブル読み出し専用メモリ(Erasable Programmable Read-Only Memory、EPROMまたはフラッシュメモリ)、光ファイバ、ポータブルコンパクトディスク読み出し専用ディスク(Compact Disc Read-Only Memory、CD-ROM)、光記憶デバイス、磁気記憶デバイス、または上記内容の任意の適当な組み合わせを含む。
ユーザとのインタラクションを提供するために、ここで説明するシステムおよび技術をコンピュータで実施することができ、該コンピュータは、ユーザに情報を表示するための表示装置(例えば、ブラウン管((Cathode Ray Tube、CRT))または液晶ディスプレイ(Liquid Crystal Display、LCD)モニタ)と、ユーザがそれにより入力をコンピュータに提供することができるキーボードおよび指向装置(例えば、マウスまたはトラックボール)とを有する。他の種類の装置は、更にユーザとのインタラクションを提供するために使用できる。例えば、ユーザに提供されるフィードバックは、任意の形式のセンシングフィードバック(例えば、視覚フィードバック、聴覚フィードバック、または触覚フィードバック)であってもよく、且つ、任意の形式(音入力、音声入力または、触覚入力を含む)でユーザからの入力を受信することができる。
ここで説明するシステムおよび技術を、バックグラウンドコンポーネントを含むコンピューティングシステム(例えば、データサーバとする)、または中間コンポーネントを含むコンピューティングシステム(例えば、アプリケーションサーバ)、またはフロントエンドコンポーネントを含むコンピューティングシステム(例えば、ユーザがそれによりここで説明するシステムおよび技術の実施形態とインタラクションできるグラフィカルユーザインタフェースまたはネットワークブラウザを有するユーザコンピュータ)、またはこのようなバックグラウンドコンポーネント、中間コンポーネント、またはフロントエンドコンポーネントの任意の組み合わせを含むコンピューティングシステムに実施することができる。任意の形式または媒体のデジタルデータ通信(例えば、通信ネットワーク)により、システムのコンポーネントを相互に接続することができる。通信ネットワークの例は、ローカルエリアネットワーク(Local Area Network、LAN)、ワイドエリアネットワーク(Wide Area Network、WAN)、ブロックチェーンネットワーク、およびインターネットを含む。
コンピューティングシステムはクライアントおよびサーバを含んでもよい。クライアントとサーバとは、一般的に互いに離れ、且つ、通常、通信ネットワークを介してインタラクションを行う。対応するコンピュータで実行されて互いにクライアント-サーバ関係を持つコンピュータプログラムにより、クライアントとサーバとの関係を生成する。サーバはクラウドサーバであってもよく、クラウドコンピューティングサーバまたはクラウドホストとも呼ばれ、クラウドコンピューティングサービス体系における1つのホスト製品であり、従来の物理ホストおよびVPS(Virtual Private Server、仮想専用サーバ)サービスに存在する管理しにくく、トラフィックの拡張性が弱いという欠陥を解決するために使用される。
上記に示す様々な形式のフローを用い、ステップを並べ替え、追加または削除することができることを理解すべきである。例えば、本発明に記載された各ステップは、並列に実行されてもよいし、順に実行されてもよいし、異なる順序で実行されてもよく、本発明に開示された技術案の所望の結果を達成できる限り、本発明はここで限定しない。

Claims (15)

  1. 予め取得したアプレットページの初回描画結果に基づいて、前記アプレットページに対して、原始インクリメンタルレンダリングを行い、前記アプレットページの原始インクリメンタルレンダリング結果を取得することと、
    前記アプレットページの初回描画結果、前記アプレットページの原始インクリメンタルレンダリング結果、および予め取得した前記アプレットページの初期インクリメンタルレンダリング結果に基づき、前記アプレットページをレンダリングすることと、
    を含む、
    アプレットページレンダリング方法。
  2. 予め取得したアプレットページの初回描画結果に基づいて、前記アプレットページに対して、原始インクリメンタルレンダリングを行い、前記アプレットページの原始インクリメンタルレンダリング結果を取得することは、
    予め取得した前記アプレットページの初回描画結果に基づいて、前記アプレットページに対して、原始インクリメンタルレンダリングを行うことをトリガするメッセージを生成することと、
    前記アプレットページに対して、原始インクリメンタルレンダリングを行うことをトリガする前記メッセージに基づいて、前記アプレットページに対して、原始インクリメンタル描画レンダリングを行い、前記アプレットページの原始インクリメンタルレンダリング結果を取得することと、
    を含む、
    請求項1に記載の方法。
  3. 予め取得したアプレットページの初回描画結果に基づいて、前記アプレットページに対して、原始インクリメンタルレンダリングを行い、前記アプレットページの原始インクリメンタルレンダリング結果を取得する前に、
    ユーザからの前記アプレットページの開く命令に応答して、前記アプレットページの論理コードおよびページスタイルファイルをロードし、前記アプレットページの論理コードのロード結果および前記アプレットページのページスタイルファイルのロード結果を取得することと、
    前記アプレットページの論理コードのロード結果から、前記アプレットページをレンダリングするための初期データを抽出することと、
    前記アプレットページのページスタイルファイルのロード結果および前記アプレットページをレンダリングするための前記初期データに基づいて、前記アプレットページを初回描画し、前記アプレットページの初回描画結果を取得することと、
    を更に含む、
    請求項1に記載の方法。
  4. 前記アプレットページの論理コードのロード結果から、前記アプレットページをレンダリングするための初期データを抽出した後に、
    前記アプレットページに対して、初期インクリメンタルレンダリングを行うことをトリガするメッセージを生成することと、
    前記アプレットページに対して、初期インクリメンタルレンダリングを行うことをトリガする前記メッセージに基づいて、前記アプレットページに対して、初期インクリメンタル描画レンダリングを行い、前記アプレットページの初期インクリメンタルレンダリング結果を取得することと、
    を更に含む、
    請求項3に記載の方法。
  5. 前記アプレットページに対して、初期インクリメンタルレンダリングを行うことをトリガするメッセージを生成することは、
    サーバにおいて前記アプレットページに対して、初期インクリメンタルレンダリングを行うことをトリガするメッセージを生成するデータを取得することと、
    前記アプレットページに対して、初期インクリメンタルレンダリングを行うことをトリガするメッセージを生成する前記データに基づき、前記アプレットページに対して、初期インクリメンタルレンダリングを行うことをトリガする前記メッセージを生成することと、
    を含む、
    請求項4に記載の方法。
  6. 前記アプレットページに対して、初期インクリメンタル描画レンダリングを行い、前記アプレットページの初期インクリメンタルレンダリング結果を取得することは、
    前記アプレットページに対して、初期インクリメンタルレンダリングを行うことをトリガする前記メッセージを受信した際に、前記アプレットページの初回描画結果を取得していない場合、
    前記アプレットページに対して、初期インクリメンタルレンダリングを行うことをトリガする前記メッセージをキャッシュキューに送信し、
    前記キャッシュキューに基づいて、前記アプレットページに対して、初期インクリメンタル描画レンダリングを行い、
    前記アプレットページの初期インクリメンタルレンダリング結果を取得することと、
    前記アプレットページに対して、初期インクリメンタルレンダリングを行うことをトリガする前記メッセージを受信した際に、前記アプレットページの初回描画結果を取得した場合、
    直接に前記アプレットページに対して、初期インクリメンタルレンダリングを行うことをトリガする前記メッセージに基づいて、前記アプレットページに対して、初期インクリメンタル描画レンダリングを行い、
    前記アプレットページの初期インクリメンタルレンダリング結果を取得することと、
    を含む、
    請求項4に記載の方法。
  7. インクリメンタル描画モジュールとレンダリングモジュールとを備えるアプレットページレンダリング装置であって、
    前記インクリメンタル描画モジュールは、
    予め取得したアプレットページの初回描画結果に基づいて、前記アプレットページに対して、原始インクリメンタルレンダリングを行い、
    前記アプレットページの原始インクリメンタルレンダリング結果を取得する、ように構成され、
    前記レンダリングモジュールは、
    前記アプレットページの初回描画結果、前記アプレットページの原始インクリメンタルレンダリング結果、および予め取得した前記アプレットページの初期インクリメンタルレンダリング結果に基づき、前記アプレットページをレンダリングする、ように構成される、
    アプレットページレンダリング装置。
  8. 前記インクリメンタル描画モジュールは、
    予め取得した前記アプレットページの初回描画結果に基づいて、前記アプレットページに対して、原始インクリメンタルレンダリングを行うことをトリガするメッセージを生成し、
    前記アプレットページに対して、原始インクリメンタルレンダリングを行うことをトリガする前記メッセージに基づいて、前記アプレットページに対して、原始インクリメンタル描画レンダリングを行い、
    前記アプレットページの原始インクリメンタルレンダリング結果を取得する、
    ように構成される、
    請求項7に記載の装置。
  9. 前記アプレットページレンダリング装置は、更に、
    ユーザからの前記アプレットページの開く命令に応答して、前記アプレットページの論理コードおよびページスタイルファイルをロードし、
    前記アプレットページの論理コードのロード結果および前記アプレットページのページスタイルファイルのロード結果を取得し、
    前記アプレットページの論理コードのロード結果から、前記アプレットページをレンダリングするための初期データを抽出し、
    前記アプレットページのページスタイルファイルのロード結果および前記アプレットページをレンダリングするための前記初期データに基づいて、前記アプレットページを初回描画し、
    前記アプレットページの初回描画結果を取得する、
    ように構成される、初回描画モジュールを備える、
    請求項7に記載の装置。
  10. 前記インクリメンタル描画モジュールは、更に、
    前記アプレットページに対して、初期インクリメンタルレンダリングを行うことをトリガするメッセージを生成し、
    前記アプレットページに対して、初期インクリメンタルレンダリングを行うことをトリガする前記メッセージに基づいて、前記アプレットページに対して、初期インクリメンタル描画レンダリングを行い、
    前記アプレットページの初期インクリメンタルレンダリング結果を取得する、
    ように構成される、
    請求項9に記載の装置。
  11. 前記インクリメンタル描画モジュールは、
    サーバにおいて前記アプレットページに対して、初期インクリメンタルレンダリングを行うことをトリガする前記メッセージを生成するデータを取得し、
    前記アプレットページに対して、初期インクリメンタルレンダリングを行うことをトリガする前記メッセージのデータに基づき、前記アプレットページに対して、初期インクリメンタルレンダリングを行うことをトリガするメッセージを生成することにより、前記アプレットページに対して、初期インクリメンタルレンダリングを行うことをトリガするメッセージを生成する、
    ように構成される、
    請求項10に記載の装置。
  12. 前記インクリメンタル描画モジュールは、
    前記アプレットページに対して、初期インクリメンタルレンダリングを行うことをトリガする前記メッセージを受信した際に、前記アプレットページの初回描画結果を取得していない場合、
    前記アプレットページに対して、初期インクリメンタルレンダリングを行うことをトリガする前記メッセージをキャッシュキューに送信し、
    前記キャッシュキューに基づいて、前記アプレットページに対して、初期インクリメンタル描画レンダリングを行い、
    前記アプレットページの初期インクリメンタルレンダリング結果を取得し、
    前記アプレットページに対して、初期インクリメンタルレンダリングを行うことをトリガする前記メッセージを受信した際に、前記アプレットページの初回描画結果を取得した場合、
    直接に前記アプレットページに対して、初期インクリメンタルレンダリングを行うことをトリガする前記メッセージに基づいて、前記アプレットページに対して初期インクリメンタル描画レンダリングを行い、
    前記アプレットページの初期インクリメンタルレンダリング結果を取得することにより、前記アプレットページに対して、初期インクリメンタル描画レンダリングを行い、
    前記アプレットページの初期インクリメンタルレンダリング結果を取得する、
    ように構成される、
    請求項10に記載の装置。
  13. 少なくとも1つのプロセッサと、
    前記少なくとも1つのプロセッサに通信接続されたメモリと、
    を備える、電子機器であって、
    前記メモリには、前記少なくとも1つのプロセッサによって実行可能な命令が記憶され、
    前記命令は、実行されると、請求項1乃至6のいずれか一項に記載の方法を前記少なくとも1つのプロセッサに実施させる、
    電子機器。
  14. コンピュータ命令が記憶された非一時的コンピュータ可読記憶媒体であって、
    前記コンピュータ命令は、実行されると、請求項1乃至6のいずれか一項に記載の方法をコンピュータに実施させる、
    非一時的コンピュータ可読記憶媒体。
  15. 複数の命令を含むコンピュータプログラムであって、
    前記命令は、実行されると、請求項1乃至6のいずれか一項に記載の方法をプロセッサに実施させる、
    コンピュータプログラム。
JP2022524184A 2020-12-25 2021-05-08 アプレットページレンダリング方法、装置、電子機器、および記憶媒体 Active JP7482223B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN202011573045.X 2020-12-25
CN202011573045.XA CN112540806B (zh) 2020-12-25 2020-12-25 一种小程序页面渲染方法、装置、电子设备及存储介质
PCT/CN2021/092352 WO2022134428A1 (zh) 2020-12-25 2021-05-08 小程序页面渲染方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
JP2023510450A true JP2023510450A (ja) 2023-03-14
JP7482223B2 JP7482223B2 (ja) 2024-05-13

Family

ID=

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116700694A (zh) * 2023-08-07 2023-09-05 深圳凡泰极客科技有限责任公司 小程序引擎

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116700694A (zh) * 2023-08-07 2023-09-05 深圳凡泰极客科技有限责任公司 小程序引擎
CN116700694B (zh) * 2023-08-07 2024-01-26 深圳凡泰极客科技有限责任公司 小程序引擎

Also Published As

Publication number Publication date
KR20220063290A (ko) 2022-05-17
US20230359483A1 (en) 2023-11-09

Similar Documents

Publication Publication Date Title
WO2022134428A1 (zh) 小程序页面渲染方法、装置、电子设备及存储介质
JP7194162B2 (ja) データ処理方法、装置、電子機器及び記憶媒体
US10838873B2 (en) Method, apparatus, and computer program product for managing addresses in distributed system
KR20220151585A (ko) 업무 데이터 처리 방법, 장치, 전자 기기, 저장 매체 및 컴퓨터 프로그램
EP4209894A1 (en) Cloud code development system, method, and apparatus, device, and storage medium
US20140059114A1 (en) Application service providing system and method and server apparatus and client apparatus for application service
JP2023017825A (ja) ネットワーク機器のテスト方法及びその装置
US20210117169A1 (en) Code execution method, device, and rendering apparatus
CN114035865B (zh) 启动小程序的方法、装置、设备以及存储介质
CN112948018B (zh) 用于小程序的动态库加载方法、装置、设备及介质
CN111767059B (zh) 深度学习模型的部署方法、装置、电子设备和存储介质
US11556401B2 (en) Method, device and computer program product for optimizing remote call
CN113778593A (zh) 云桌面控制方法、装置、电子设备、存储介质及程序产品
KR20220063290A (ko) 애플릿 페이지 렌더링 방법, 장치, 전자 설비 및 저장 매체
CN112947916A (zh) 用于实现在线画布的方法、装置、设备以及存储介质
CN111767433A (zh) 数据处理方法、装置、存储介质以及终端
JP7482223B2 (ja) アプレットページレンダリング方法、装置、電子機器、および記憶媒体
CN116243983A (zh) 处理器、集成电路芯片、指令处理方法、电子设备和介质
WO2022134425A1 (zh) 小程序运行方法及装置、电子设备、介质
CN113867920A (zh) 任务处理方法、装置、电子设备和介质
CN114090118A (zh) 启动小程序的方法、装置、设备以及存储介质
CN111813407A (zh) 游戏开发方法、游戏运行方法、装置和电子设备
CN115334159B (zh) 处理流式数据的方法、装置、设备和介质
CN114416249B (zh) 程序处理方法、装置、设备及存储介质
WO2023024035A1 (zh) 请求处理方法、装置、电子设备以及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220425

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230704

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230927

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231114

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240206

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240416

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240426