Skip to content

API Implementation

David Anderson edited this page Sep 20, 2023 · 4 revisions

Communication

The client and the app communicate through several shared-memory message-passing channels:

Messages from client to app

process_control_request

Sent individually, as needed.

<quit/>
<abort/>
<suspend/>
<resume/>
<reread_app_info/>
<network_available/>

heartbeat

Sent all together, every 1 sec.

<heartbeat/>
<wss>...
<max_wss>...
<network_suspended/>
[ <sporadic_ca>... ]

trickle_down

<have_new_trickle_down/>

graphics_request

Not used

Messages from app to client

app_status

Sent together, every 1 sec or when boinc_report_app_status() called by app

<current_cpu_time>...
<checkpoint_cpu_time>...
<fraction_done> ...
[<other_pid>... ]
[<bytes_sent>...]
[<bytes_received>...]
[<sporadic_ac>...]

trickle_up

<have_new_trickle_up/>

process_control_reply

Not used

graphics_reply

Sent once, after e.g. ```boinc_web_graphics_url()''' call.

<web_graphics_url>
<remote_desktop_addr>
Clone this wiki locally