pub async fn rpc_request<Args: Send + 'static, Req: Serialize + DeserializeOwned + Send + 'static, Resp: Serialize + DeserializeOwned + Send, F: Fn(Args, Req) -> L + Send + Sync + Copy + 'static, L: Future<Output = Resp> + Send>(
conn: &Connection,
reg: Arc<RpcRegistry<Args>>,
func: F,
req: Req,
size_limit: usize,
) -> Result<Resp, NetworkError>