-
Notifications
You must be signed in to change notification settings - Fork 52
rc_client_set_allow_background_memory_reads
Sets whether background memory reads are allowed (true by default).
void rc_client_set_allow_background_memory_reads(
rc_client_t* client,
int enabled
);client
The rc_client_t to modify.
enabled
1 to enable background memory reads (default), 0 to disable them.
Allows a client to specify that memory reads should only occur within the context of rc_client_do_frame or rc_client_idle. The trade-off is that the work requiring the memory reads could be delayed by as much as however infrequently rc_client_idle is called.
For basic integrations, this currently only affects the achievement validation logic while loading a game. After the achievements are received from the server, we call the memory_read_function to make sure the client exposes the requested memory so we can mark achievements as unsupported before calling the load game callback. This validation typically happens on the background thread where the server request was received. When rc_client_set_allow_background_memory_reads is set to false, the load process is put on hold and the validation is queued up to be run by the rc_client_idle loop.
When integrating with raintegration, this also tells the DLL to offload all of its memory reads that are triggered by the user interacting with the UI so they will also occur in the rc_client_idle loop.
Minimum version: 12.0.0
rc_client
- rc_client_abort_async
- rc_client_create
- rc_client_destroy
- rc_client_enable_logging
- rc_client_get_encore_mode_enabled
- rc_client_get_hardcore_enabled
- rc_client_get_spectator_mode_enabled
- rc_client_get_unofficial_enabled
- rc_client_get_user_agent_clause
- rc_client_get_userdata
- rc_client_set_allow_background_memory_reads
- rc_client_set_encore_mode_enabled
- rc_client_set_hardcore_enabled
- rc_client_set_hash_callbacks
- rc_client_set_host
- rc_client_set_spectator_mode_enabled
- rc_client_set_unofficial_enabled
- rc_client_set_userdata
- rc_client_begin_login_with_password
- rc_client_begin_login_with_token
- rc_client_get_user_info
- rc_client_get_user_game_summary
- rc_client_get_user_subset_summary
- rc_client_logout
- rc_client_user_get_image_url
- rc_client_achievement_get_image_url
- rc_client_begin_change_media
- rc_client_begin_fetch_leaderboard_entries
- rc_client_begin_fetch_leaderboard_entries_around_user
- rc_client_begin_identify_and_change_media
- rc_client_begin_identify_and_load_game
- rc_client_begin_load_game
- rc_client_create_achievement_list
- rc_client_create_leaderboard_list
- rc_client_destroy_achievement_list
- rc_client_destroy_leaderboard_entry_list
- rc_client_destroy_leaderboard_list
- rc_client_game_get_image_url
- rc_client_get_achievement_info
- rc_client_get_game_info
- rc_client_get_leaderboard_info
- rc_client_get_load_game_state
- rc_client_get_rich_presence_message
- rc_client_get_subset_info
- rc_client_has_achievements
- rc_client_has_leaderboards
- rc_client_has_rich_presence
- rc_client_is_game_loaded
- rc_client_leaderboard_entry_get_user_image_url
- rc_client_unload_game
- rc_client_can_pause
- rc_client_deserialize_progress
- rc_client_do_frame
- rc_client_idle
- rc_client_is_processing_required
- rc_client_progress_size
- rc_client_reset
- rc_client_serialize_progress
- rc_client_set_event_handler
- rc_client_set_read_memory_function
- rc_client_begin_load_raintegration
- rc_client_raintegration_activate_menu_item
- rc_client_raintegration_get_achievement_state
- rc_client_raintegration_get_menu
- rc_client_raintegration_has_modifications
- rc_client_raintegration_rebuild_submenu
- rc_client_raintegration_set_console_id
- rc_client_raintegration_set_event_handler
- rc_client_raintegration_set_get_game_name_function
- rc_client_raintegration_set_write_memory_function
- rc_client_raintegration_update_main_window_handle
- rc_client_raintegration_update_menu_item
- rc_client_unload_raintegration
rc_runtime
- rc_runtime_activate_achievement
- rc_runtime_activate_lboard
- rc_runtime_activate_richpresence
- rc_runtime_deactivate_achievement
- rc_runtime_deactivate_lboard
- rc_runtime_deserialize_progress
- rc_runtime_destroy
- rc_runtime_do_frame
- rc_runtime_format_achievement_measured
- rc_runtime_format_lboard_value
- rc_runtime_get_achievement
- rc_runtime_get_achievement_measured
- rc_runtime_get_lboard
- rc_runtime_get_richpresence
- rc_runtime_init
- rc_runtime_invalidate_address
- rc_runtime_progress_size
- rc_runtime_reset
- rc_runtime_serialize_progress
- rc_runtime_validate_addresses
rapi
- rc_api_destroy_fetch_all_user_progress_response
- rc_api_destroy_fetch_followed_users_response
- rc_api_destroy_fetch_user_unlocks_response
- rc_api_destroy_login_response
- rc_api_destroy_start_session_response
- rc_api_init_fetch_all_user_progress_request
- rc_api_init_fetch_followed_users_request
- rc_api_init_fetch_user_unlocks_request
- rc_api_init_login_request
- rc_api_init_start_session_request
- rc_api_process_fetch_all_user_progress_server_response
- rc_api_process_fetch_followed_users_server_response
- rc_api_process_fetch_user_unlocks_response
- rc_api_process_login_response
- rc_api_process_start_session_response
- rc_api_destroy_award_achievement_response
- rc_api_destroy_fetch_game_data_response
- rc_api_destroy_fetch_game_sets_response
- rc_api_destroy_ping_response
- rc_api_destroy_resolve_hash_response
- rc_api_destroy_submit_lboard_entry_response
- rc_api_init_award_achievement_request
- rc_api_init_fetch_game_data_request
- rc_api_init_fetch_game_sets_request
- rc_api_init_fetch_image_request
- rc_api_init_ping_request
- rc_api_init_resolve_hash_request
- rc_api_init_submit_lboard_entry_request
- rc_api_process_award_achievement_response
- rc_api_process_fetch_game_data_response
- rc_api_process_fetch_game_sets_server_response
- rc_api_process_ping_response
- rc_api_process_resolve_hash_response
- rc_api_process_submit_lboard_entry_response
- rc_api_destroy_fetch_achievement_info_response
- rc_api_destroy_fetch_game_titles_response
- rc_api_destroy_fetch_games_list_response
- rc_api_destroy_fetch_hash_library_response
- rc_api_destroy_fetch_leaderboard_info_response
- rc_api_init_fetch_achievement_info_request
- rc_api_init_fetch_game_titles_request
- rc_api_init_fetch_games_list_request
- rc_api_init_fetch_hash_library_request
- rc_api_init_fetch_leaderboard_info_request
- rc_api_process_fetch_achievement_info_response
- rc_api_process_fetch_game_titles_server_response
- rc_api_process_fetch_games_list_response
- rc_api_process_fetch_hash_library_response
- rc_api_process_fetch_leaderboard_info_response