module GRPC::Core
Public Class Methods
fork_unsafe_begin()
click to toggle source
static VALUE grpc_rb_fork_unsafe_begin_api() { grpc_rb_fork_unsafe_begin(); } static VALUE grpc_rb_fork_unsafe_end_api() { grpc_rb_fork_unsafe_end(); } // One-time initialization void Init_grpc_c() { if (!grpc_rb_load_core()) { rb_raise(rb_eLoadError, "Couldn't find or load gRPC's dynamic C core"); return; } rb_global_variable(&g_bg_thread_init_rb_mu); g_bg_thread_init_rb_mu = rb_mutex_new(); grpc_rb_mGRPC = rb_define_module("GRPC"); grpc_rb_mGrpcCore = rb_define_module_under(grpc_rb_mGRPC, "Core"); grpc_rb_sNewServerRpc = rb_struct_define( "NewServerRpc", "method", "host", "deadline", "metadata", "call", NULL); grpc_rb_sStatus = rb_const_get(rb_cStruct, rb_intern("Status")); sym_code = ID2SYM(rb_intern("code")); sym_details = ID2SYM(rb_intern("details")); sym_metadata = ID2SYM(rb_intern("metadata")); // init C-defined classes Init_grpc_channel(); Init_grpc_call(); Init_grpc_call_credentials(); Init_grpc_channel_credentials(); Init_grpc_xds_channel_credentials(); Init_grpc_server(); Init_grpc_server_credentials(); Init_grpc_xds_server_credentials(); Init_grpc_time_consts(); Init_grpc_compression_options(); // define fork APIs rb_define_module_function(grpc_rb_mGRPC, "prefork", grpc_rb_prefork, 0); rb_define_module_function(grpc_rb_mGRPC, "postfork_child", grpc_rb_postfork_child, 0); rb_define_module_function(grpc_rb_mGRPC, "postfork_parent", grpc_rb_postfork_parent, 0); rb_define_module_function(grpc_rb_mGrpcCore, "fork_unsafe_begin", grpc_rb_fork_unsafe_begin_api, 0); rb_define_module_function(grpc_rb_mGrpcCore, "fork_unsafe_end", grpc_rb_fork_unsafe_end_api, 0); }
fork_unsafe_end()
click to toggle source
static VALUE grpc_rb_fork_unsafe_end_api() { grpc_rb_fork_unsafe_end(); } // One-time initialization void Init_grpc_c() { if (!grpc_rb_load_core()) { rb_raise(rb_eLoadError, "Couldn't find or load gRPC's dynamic C core"); return; } rb_global_variable(&g_bg_thread_init_rb_mu); g_bg_thread_init_rb_mu = rb_mutex_new(); grpc_rb_mGRPC = rb_define_module("GRPC"); grpc_rb_mGrpcCore = rb_define_module_under(grpc_rb_mGRPC, "Core"); grpc_rb_sNewServerRpc = rb_struct_define( "NewServerRpc", "method", "host", "deadline", "metadata", "call", NULL); grpc_rb_sStatus = rb_const_get(rb_cStruct, rb_intern("Status")); sym_code = ID2SYM(rb_intern("code")); sym_details = ID2SYM(rb_intern("details")); sym_metadata = ID2SYM(rb_intern("metadata")); // init C-defined classes Init_grpc_channel(); Init_grpc_call(); Init_grpc_call_credentials(); Init_grpc_channel_credentials(); Init_grpc_xds_channel_credentials(); Init_grpc_server(); Init_grpc_server_credentials(); Init_grpc_xds_server_credentials(); Init_grpc_time_consts(); Init_grpc_compression_options(); // define fork APIs rb_define_module_function(grpc_rb_mGRPC, "prefork", grpc_rb_prefork, 0); rb_define_module_function(grpc_rb_mGRPC, "postfork_child", grpc_rb_postfork_child, 0); rb_define_module_function(grpc_rb_mGRPC, "postfork_parent", grpc_rb_postfork_parent, 0); rb_define_module_function(grpc_rb_mGrpcCore, "fork_unsafe_begin", grpc_rb_fork_unsafe_begin_api, 0); rb_define_module_function(grpc_rb_mGrpcCore, "fork_unsafe_end", grpc_rb_fork_unsafe_end_api, 0); }