提交 1a6ddff4 编写于 作者: 若汝棋茗

更新文档

上级 c5ab1e7d
......@@ -4,13 +4,13 @@
<meta charset="UTF-8">
<meta name="generator" content="Docusaurus v2.2.0">
<title data-rh="true">Page Not Found | TouchSocket</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://rrqm_home.gitee.io/touchsocket/404.html"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docusaurus_tag" content="default"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docsearch:docusaurus_tag" content="default"><meta data-rh="true" property="og:title" content="Page Not Found | TouchSocket"><link data-rh="true" rel="icon" href="/touchsocket/img/favicon.ico"><link data-rh="true" rel="canonical" href="https://rrqm_home.gitee.io/touchsocket/404.html"><link data-rh="true" rel="alternate" href="https://rrqm_home.gitee.io/touchsocket/404.html" hreflang="en"><link data-rh="true" rel="alternate" href="https://rrqm_home.gitee.io/touchsocket/404.html" hreflang="x-default"><link rel="stylesheet" href="/touchsocket/assets/css/styles.4e3b3a7a.css">
<link rel="preload" href="/touchsocket/assets/js/runtime~main.dab70d56.js" as="script">
<link rel="preload" href="/touchsocket/assets/js/runtime~main.621847f9.js" as="script">
<link rel="preload" href="/touchsocket/assets/js/main.0a8068d8.js" as="script">
</head>
<body class="navigation-with-keyboard">
<script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var t=null;try{t=localStorage.getItem("theme")}catch(t){}return t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
<div role="region" aria-label="Skip to main content"><a class="skipToContent_fXgn" href="#docusaurus_skipToContent_fallback">Skip to main content</a></div><nav class="navbar navbar--fixed-top navbarHideable_m1mJ"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Toggle navigation bar" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/touchsocket/"><div class="navbar__logo"><img src="/touchsocket/img/TouchSocketlogo.png" alt="TouchSocket Logo" class="themedImage_ToTc themedImage--light_HNdA"><img src="/touchsocket/img/TouchSocketlogo.png" alt="TouchSocket Logo" class="themedImage_ToTc themedImage--dark_i4oU"></div><b class="navbar__title text--truncate">TouchSocket</b></a><a class="navbar__item navbar__link" href="/touchsocket/docs">文档</a><a class="navbar__item navbar__link" href="/touchsocket/docs/upgrade">更新日志</a></div><div class="navbar__items navbar__items--right"><div class="navbar__item dropdown dropdown--hoverable dropdown--right"><a href="#" aria-haspopup="true" aria-expanded="false" role="button" class="navbar__link">源码</a><ul class="dropdown__menu"><li><a href="https://gitee.com/rrqm_home/touchsocket" target="_blank" rel="noopener noreferrer" class="dropdown__link">Gitee(主库)<svg width="12" height="12" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li><a href="https://github.com/RRQM/TouchSocket" target="_blank" rel="noopener noreferrer" class="dropdown__link">GitHub<svg width="12" height="12" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li><a href="https://www.nuget.org/profiles/rrqm" target="_blank" rel="noopener noreferrer" class="dropdown__link">Nuget<svg width="12" height="12" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li></ul></div><a href="https://gitee.com/dotnetchina" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link">社区<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a><div class="toggle_vylO colorModeToggle_DEke"><button class="clean-btn toggleButton_gllP toggleButtonDisabled_aARS" type="button" disabled="" title="Switch between dark and light mode (currently light mode)" aria-label="Switch between dark and light mode (currently light mode)" aria-live="polite"><svg viewBox="0 0 24 24" width="24" height="24" class="lightToggleIcon_pyhR"><path fill="currentColor" d="M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"></path></svg><svg viewBox="0 0 24 24" width="24" height="24" class="darkToggleIcon_wfgR"><path fill="currentColor" d="M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"></path></svg></button></div><div class="searchBox_ZlJk"><div class="navbar__search searchBarContainer_NW3z"><input placeholder="Search" aria-label="Search" class="navbar__search-input"><div class="loadingRing_RJI3 searchBarLoadingRing_YnHq"><div></div><div></div><div></div><div></div></div><div class="searchHintContainer_Pkmr"><kbd class="searchHint_iIMx">ctrl</kbd><kbd class="searchHint_iIMx">K</kbd></div></div></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="docusaurus_skipToContent_fallback" class="main-wrapper mainWrapper_z2l0"><main class="container margin-vert--xl"><div class="row"><div class="col col--6 col--offset-3"><h1 class="hero__title">Page Not Found</h1><p>We could not find what you were looking for.</p><p>Please contact the owner of the site that linked you to the original URL and let them know their link is broken.</p></div></div></main></div><footer class="footer footer--dark"><div class="container container-fluid"><div class="row footer__links"><div class="col footer__col"><div class="footer__title">文档</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/touchsocket/docs">入门</a></li><li class="footer__item"><a class="footer__link-item" href="/touchsocket/docs">手册</a></li></ul></div><div class="col footer__col"><div class="footer__title">社区</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://gitee.com/rrqm_home/touchsocket/issues" target="_blank" rel="noopener noreferrer" class="footer__link-item">讨论<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a href="https://gitee.com/rrqm_home/touchsocket/board" target="_blank" rel="noopener noreferrer" class="footer__link-item">看板<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li></ul></div><div class="col footer__col"><div class="footer__title">更多</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://gitee.com/rrqm_home/touchsocket" target="_blank" rel="noopener noreferrer" class="footer__link-item">仓库<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li></ul></div></div><div class="footer__bottom text--center"><div class="footer__copyright">Copyright © 2020-2023 若汝棋茗.</div></div></div></footer></div>
<script src="/touchsocket/assets/js/runtime~main.dab70d56.js"></script>
<script src="/touchsocket/assets/js/runtime~main.621847f9.js"></script>
<script src="/touchsocket/assets/js/main.0a8068d8.js"></script>
</body>
</html>
\ No newline at end of file
"use strict";(self.webpackChunktouchsocket=self.webpackChunktouchsocket||[]).push([[1285],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>f});var n=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function c(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?o(Object(r),!0).forEach((function(t){a(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):o(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function i(e,t){if(null==e)return{};var r,n,a=function(e,t){if(null==e)return{};var r,n,a={},o=Object.keys(e);for(n=0;n<o.length;n++)r=o[n],t.indexOf(r)>=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n<o.length;n++)r=o[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var s=n.createContext({}),l=function(e){var t=n.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):c(c({},t),e)),r},p=function(e){var t=l(e.components);return n.createElement(s.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,o=e.originalType,s=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),u=l(r),f=a,b=u["".concat(s,".").concat(f)]||u[f]||d[f]||o;return r?n.createElement(b,c(c({ref:t},p),{},{components:r})):n.createElement(b,c({ref:t},p))}));function f(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=r.length,c=new Array(o);c[0]=u;var i={};for(var s in t)hasOwnProperty.call(t,s)&&(i[s]=t[s]);i.originalType=e,i.mdxType="string"==typeof e?e:a,c[1]=i;for(var l=2;l<o;l++)c[l]=r[l];return n.createElement.apply(null,c)}return n.createElement.apply(null,r)}u.displayName="MDXCreateElement"},3230:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>s,contentTitle:()=>c,default:()=>d,frontMatter:()=>o,metadata:()=>i,toc:()=>l});var n=r(7462),a=(r(7294),r(3905));const o={id:"dataadaptertester",sidebar_position:5,title:"\u9002\u914d\u5668\u5b8c\u6574\u6027\u3001\u6027\u80fd\u6d4b\u8bd5",sidebar_label:"8.5 \u9002\u914d\u5668\u5b8c\u6574\u6027\u3001\u6027\u80fd\u6d4b\u8bd5"},c=void 0,i={unversionedId:"dataadaptertester",id:"dataadaptertester",title:"\u9002\u914d\u5668\u5b8c\u6574\u6027\u3001\u6027\u80fd\u6d4b\u8bd5",description:"\u4e00\u3001\u8bf4\u660e",source:"@site/docs/dataadaptertester.mdx",sourceDirName:".",slug:"/dataadaptertester",permalink:"/touchsocket/docs/dataadaptertester",draft:!1,editUrl:"https://gitee.com/rrqm_home/touchsocket/tree/master/handbook/docs/dataadaptertester.mdx",tags:[],version:"current",lastUpdatedBy:"\u82e5\u6c5d\u68cb\u8317",lastUpdatedAt:1675229490,formattedLastUpdatedAt:"Feb 1, 2023",sidebarPosition:5,frontMatter:{id:"dataadaptertester",sidebar_position:5,title:"\u9002\u914d\u5668\u5b8c\u6574\u6027\u3001\u6027\u80fd\u6d4b\u8bd5",sidebar_label:"8.5 \u9002\u914d\u5668\u5b8c\u6574\u6027\u3001\u6027\u80fd\u6d4b\u8bd5"},sidebar:"docs",previous:{title:"\u56fd\u7f51\u8f93\u7535i1\u6807\u51c6\u7248",permalink:"/touchsocket/docs/stategridtransmission"},next:{title:"\u4ea7\u54c1\u53ca\u67b6\u6784\u4ecb\u7ecd",permalink:"/touchsocket/docs/httpdescription"}},s={},l=[{value:"\u4e00\u3001\u8bf4\u660e",id:"\u4e00\u8bf4\u660e",level:2},{value:"1.1 \u6d4b\u8bd5\u539f\u7406",id:"11-\u6d4b\u8bd5\u539f\u7406",level:4},{value:"1.2 \u6d4b\u8bd5\u4e8b\u9879",id:"12-\u6d4b\u8bd5\u4e8b\u9879",level:4},{value:"\u4e8c\u3001Tcp\u9002\u914d\u5668",id:"\u4e8ctcp\u9002\u914d\u5668",level:2}],p={toc:l};function d(e){let{components:t,...r}=e;return(0,a.kt)("wrapper",(0,n.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h2",{id:"\u4e00\u8bf4\u660e"},"\u4e00\u3001\u8bf4\u660e"),(0,a.kt)("p",null,"\u9002\u914d\u5668\u6d4b\u8bd5\u662f\u6d4b\u8bd5\u9002\u914d\u5668\u5728\u6b63\u5e38\u60c5\u51b5\u4e0b\uff0c\u6781\u7aef\u5de5\u4f5c\u7684\u4e00\u79cd\u6d4b\u8bd5\u65b9\u5f0f\u3002\u80fd\u591f\u5728\u524d\u671f\uff0c\u89e3\u51b3100%\u7684\u7b97\u6cd5\u95ee\u9898\u3002\u4e5f\u80fd\u5728\u6781\u7aef\u914d\u7f6e\u4e0b\uff0c\u6a21\u62df\u6781\u7aef\u5de5\u4f5c\u73af\u5883\uff0c\u80fd\u591f\u7b80\u5355\uff0c\u76f4\u89c2\u7684\u5c55\u793a\u51fa\u9002\u914d\u5668\u7684\u7a33\u5b9a\u6027\u548c\u5de5\u4f5c\u6027\u80fd\u3002"),(0,a.kt)("h4",{id:"11-\u6d4b\u8bd5\u539f\u7406"},"1.1 \u6d4b\u8bd5\u539f\u7406"),(0,a.kt)("p",null,"\u5047\u8bbe\u53d1\u9001\u6570\u636e\u4e3a{0,1,2,3,4}\uff0c\u8fde\u7eed\u53d1\u900110\u6b21\u3002\n\u5f53bufferLength=1\u65f6\uff0c\u4f1a\u5148\u63a5\u6536\u4e00\u4e2a\u5b57\u8282\uff0c\u7136\u540e\u9002\u914d\u5668\u5224\u65ad\u65e0\u6cd5\u89e3\u6790\uff0c\u7136\u540e\u7f13\u5b58\uff0c\u7136\u540e\u518d\u63a5\u6536\u4e0b\u4e00\u4e2a\u5b57\u8282\uff0c\u76f4\u5230\u6210\u529f\u89e3\u6790\u4e00\u4e2a\u5b8c\u6574\u6570\u636e\u5305\u3002\u8be5\u6a21\u5f0f\u89e3\u51b3\u7684\u5c31\u662f\u5927\u5bb6\u6240\u8bf4\u7684\u5206\u5305\uff0c\u4e5f\u5c31\u662f\u80fd\u5f88\u597d\u7684\u6a21\u62df",(0,a.kt)("strong",{parentName:"p"},"\u7f51\u7edc\u5f88\u5dee"),"\u7684\u73af\u5883\u3002\n\u5f53bufferLength>5\u65f6,\u5047\u5982\u4e3a8\uff0c\u5219\u4f1a\u5148\u63a5\u6536{0,1,2,3,4,0,1,2}\uff0c\u7136\u540e\u9002\u914d\u5668\u6210\u529f\u5224\u65ad\u89e3\u6790\u524d\u4e94\u5b57\u8282\uff0c\u7136\u540e\u7f13\u5b58\u540e\u4e09\u5b57\u8282\uff0c\u7136\u540e\u518d\u63a5\u6536\u4e0b\u4e00\u4e2a\u7eed\u5305\uff0c\u76f4\u5230\u89e3\u6790\u7ed3\u675f\u3002"),(0,a.kt)("h4",{id:"12-\u6d4b\u8bd5\u4e8b\u9879"},"1.2 \u6d4b\u8bd5\u4e8b\u9879"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"bufferLength\u5e94\u8be5\u591a\u6b21\u8bbe\u7f6e\uff0c\u4e14\u6700\u597d\u4e0d\u8981\u6574\u9664\u4e8e\u53d1\u9001\u6570\u636e\u7684\u957f\u5ea6\uff0c\u8fd9\u6837\u907f\u514d\u5de7\u5408\u53d1\u751f\uff0c\u6d4b\u4e0d\u51fa\u6781\u7aef\u95ee\u9898\u3002"),(0,a.kt)("li",{parentName:"ol"},"Run\u7684\u6b21\u6570\u5e94\u8be5\u591a\u8bbe\uff0c\u6a21\u62df\u9ad8\u9891\u60c5\u51b5\u3002")),(0,a.kt)("h2",{id:"\u4e8ctcp\u9002\u914d\u5668"},"\u4e8c\u3001Tcp\u9002\u914d\u5668"),(0,a.kt)("p",null,"Tcp\u9002\u914d\u5668\u7684\u5de5\u4f5c\u73af\u5883\uff0c\u53ea\u9700\u8003\u8651\u5355\u7ebf\u7a0b\u5373\u53ef\u3002\u56e0\u4e3a\u662f\u5ba2\u6237\u7aef\u4e0e\u9002\u914d\u5668\u662f\u4e00\u4e00\u5bf9\u5e94\u7684\u3002"),(0,a.kt)("p",null,"\u4e0b\u5217\u4ee5 ",(0,a.kt)("a",{parentName:"p",href:"/touchsocket/docs/fixedheaderpackageadapter"},"\u56fa\u5b9a\u5305\u5934\u6570\u636e\u5904\u7406\u9002\u914d\u5668")," \u4e3a\u4f8b"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-csharp"},'//Tcp\u9002\u914d\u5668\u6d4b\u8bd5\n//bufferLength\u7684\u4f5c\u7528\u662f\u6a21\u62dftcp\u63a5\u6536\u7f13\u5b58\u533a\uff0c\u4f8b\u5982\uff1a\n\n//\u53d1\u9001\u6570\u636e\u4e3a{0,1,2,3,4}\u65f6\n//\u5f53bufferLength=1\u65f6\uff0c\u4f1a\u5148\u63a5\u6536\u4e00\u4e2a\u5b57\u8282\uff0c\u7136\u540e\u9002\u914d\u5668\u5224\u65ad\u65e0\u6cd5\u89e3\u6790\uff0c\u7136\u540e\u7f13\u5b58\uff0c\u7136\u540e\u518d\u63a5\u6536\u4e0b\u4e00\u4e2a\u5b57\u8282\uff0c\u76f4\u5230\u6210\u529f\u89e3\u6790\u3002\n//\u8be5\u6a21\u5f0f\u80fd\u5f88\u597d\u7684\u6a21\u62df\u7f51\u7edc\u5f88\u5dee\u7684\u73af\u5883\u3002\n//\u5f53bufferLength=8\u65f6\uff0c\u4f1a\u5148\u63a5\u6536{0,1,2,3,4,0,1,2}\uff0c\u7136\u540e\u9002\u914d\u5668\u5224\u65ad\u89e3\u6790\u524d\u4e94\u5b57\u8282\uff0c\u7136\u540e\u7f13\u5b58\u540e\u4e09\u5b57\u8282\uff0c\u7136\u540e\u518d\u63a5\u6536\u4e0b\u4e00\u4e2a\u7eed\u5305\uff0c\u76f4\u5230\u89e3\u6790\u7ed3\u675f\n\nfor (int bufferLength = 1; bufferLength < 1024 * 10; bufferLength += 1024)\n{\n bool isSuccess = true;\n var data = new byte[] { 0, 1, 2, 3, 4 };\n DataAdapterTester tester = DataAdapterTester.CreateTester(new FixedHeaderPackageAdapter()\n , bufferLength, (byteBlock, requestInfo) =>\n {\n //\u6b64\u5904\u5c31\u662f\u63a5\u6536\uff0c\u5982\u679c\u662f\u81ea\u5b9a\u4e49\u9002\u914d\u5668\uff0c\u53ef\u4ee5\u5c06requestInfo\u5f3a\u5236\u8f6c\u6362\u4e3a\u5b9e\u9645\u5bf9\u8c61\uff0c\u7136\u540e\u5224\u65ad\u6570\u636e\u7684\u786e\u5b9a\u6027\n if (byteBlock.Len!=5||(!byteBlock.ToArray().SequenceEqual(data)))\n {\n isSuccess = false;\n }\n });\n \n //data\u662f\u53d1\u9001\u7684\u6570\u636e\uff0c\u56e0\u4e3a\u6b64\u5904\u4f7f\u7528\u7684\u662f\u56fa\u5b9a\u5305\u5934\u9002\u914d\u5668\uff0c\n //\u53d1\u9001\u524d\u9002\u914d\u5668\u4f1a\u81ea\u52a8\u6dfb\u52a0\u5305\u5934\uff0c\u6240\u4ee5\uff0c\u6b64\u5904\u53ea\u53d1\u9001\u6570\u636e\u5373\u53ef\u3002\n //\u5982\u679c\u6d4b\u8bd5\u7684\u662f\u81ea\u5b9a\u4e49\u9002\u914d\u5668\uff0c\u53d1\u9001\u524d\u6ca1\u6709\u5c01\u88c5\u7684\u8bdd\uff0c\u5c31\u9700\u8981\u81ea\u884c\u6784\u5efa\u53d1\u9001\u6570\u636e\u3002\n //\u968f\u540e\u7684\u4e24\u4e2a\u53c2\u6570\uff0c10,10\u662f\u6d4b\u8bd5\u6b21\u6570\uff0c\u548c\u671f\u671b\u6b21\u6570\uff0c\u4e00\u822c\u8fd9\u4e24\u4e2a\u503c\u662f\u76f8\u7b49\u7684\u3002\n //\u610f\u4e3a\uff1a\u672c\u6b21\u6570\u636e\u5c06\u5faa\u73af\u53d1\u900110\u6b21\uff0c\u4e14\u4f1a\u63a5\u653610\u6b21\u3002\u4e0d\u7136\u6b64\u5904\u4f1a\u4e00\u76f4\u963b\u585e\u3002\n //\u6700\u540e\u4e00\u4e2a\u53c2\u6570\u662f\u6d4b\u8bd5\u7684\u6700\u5927\u8d85\u65f6\u65f6\u95f4\u3002\n\n var time = tester.Run(data, 10, 10, 1000 * 10);\n Thread.Sleep(1000);\n Console.WriteLine($"\u6d4b\u8bd5\u7ed3\u675f\uff0c\u72b6\u6001:{isSuccess}\uff0c\u7528\u65f6\uff1a{time}");\n}\nConsole.WriteLine("\u6d4b\u8bd5\u7ed3\u675f");\n\n')))}d.isMDXComponent=!0}}]);
\ No newline at end of file
"use strict";(self.webpackChunktouchsocket=self.webpackChunktouchsocket||[]).push([[1285],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>f});var n=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function c(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?o(Object(r),!0).forEach((function(t){a(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):o(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function i(e,t){if(null==e)return{};var r,n,a=function(e,t){if(null==e)return{};var r,n,a={},o=Object.keys(e);for(n=0;n<o.length;n++)r=o[n],t.indexOf(r)>=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n<o.length;n++)r=o[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var s=n.createContext({}),l=function(e){var t=n.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):c(c({},t),e)),r},p=function(e){var t=l(e.components);return n.createElement(s.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,o=e.originalType,s=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),u=l(r),f=a,b=u["".concat(s,".").concat(f)]||u[f]||d[f]||o;return r?n.createElement(b,c(c({ref:t},p),{},{components:r})):n.createElement(b,c({ref:t},p))}));function f(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=r.length,c=new Array(o);c[0]=u;var i={};for(var s in t)hasOwnProperty.call(t,s)&&(i[s]=t[s]);i.originalType=e,i.mdxType="string"==typeof e?e:a,c[1]=i;for(var l=2;l<o;l++)c[l]=r[l];return n.createElement.apply(null,c)}return n.createElement.apply(null,r)}u.displayName="MDXCreateElement"},3230:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>s,contentTitle:()=>c,default:()=>d,frontMatter:()=>o,metadata:()=>i,toc:()=>l});var n=r(7462),a=(r(7294),r(3905));const o={id:"dataadaptertester",sidebar_position:5,title:"\u9002\u914d\u5668\u5b8c\u6574\u6027\u3001\u6027\u80fd\u6d4b\u8bd5",sidebar_label:"8.5 \u9002\u914d\u5668\u5b8c\u6574\u6027\u3001\u6027\u80fd\u6d4b\u8bd5"},c=void 0,i={unversionedId:"dataadaptertester",id:"dataadaptertester",title:"\u9002\u914d\u5668\u5b8c\u6574\u6027\u3001\u6027\u80fd\u6d4b\u8bd5",description:"\u4e00\u3001\u8bf4\u660e",source:"@site/docs/dataadaptertester.mdx",sourceDirName:".",slug:"/dataadaptertester",permalink:"/touchsocket/docs/dataadaptertester",draft:!1,editUrl:"https://gitee.com/rrqm_home/touchsocket/tree/master/handbook/docs/dataadaptertester.mdx",tags:[],version:"current",lastUpdatedBy:"\u82e5\u6c5d\u68cb\u8317",lastUpdatedAt:1675240162,formattedLastUpdatedAt:"Feb 1, 2023",sidebarPosition:5,frontMatter:{id:"dataadaptertester",sidebar_position:5,title:"\u9002\u914d\u5668\u5b8c\u6574\u6027\u3001\u6027\u80fd\u6d4b\u8bd5",sidebar_label:"8.5 \u9002\u914d\u5668\u5b8c\u6574\u6027\u3001\u6027\u80fd\u6d4b\u8bd5"},sidebar:"docs",previous:{title:"\u56fd\u7f51\u8f93\u7535i1\u6807\u51c6\u7248",permalink:"/touchsocket/docs/stategridtransmission"},next:{title:"\u4ea7\u54c1\u53ca\u67b6\u6784\u4ecb\u7ecd",permalink:"/touchsocket/docs/httpdescription"}},s={},l=[{value:"\u4e00\u3001\u8bf4\u660e",id:"\u4e00\u8bf4\u660e",level:2},{value:"1.1 \u6d4b\u8bd5\u539f\u7406",id:"11-\u6d4b\u8bd5\u539f\u7406",level:4},{value:"1.2 \u6d4b\u8bd5\u4e8b\u9879",id:"12-\u6d4b\u8bd5\u4e8b\u9879",level:4},{value:"\u4e8c\u3001Tcp\u9002\u914d\u5668",id:"\u4e8ctcp\u9002\u914d\u5668",level:2}],p={toc:l};function d(e){let{components:t,...r}=e;return(0,a.kt)("wrapper",(0,n.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h2",{id:"\u4e00\u8bf4\u660e"},"\u4e00\u3001\u8bf4\u660e"),(0,a.kt)("p",null,"\u9002\u914d\u5668\u6d4b\u8bd5\u662f\u6d4b\u8bd5\u9002\u914d\u5668\u5728\u6b63\u5e38\u60c5\u51b5\u4e0b\uff0c\u6781\u7aef\u5de5\u4f5c\u7684\u4e00\u79cd\u6d4b\u8bd5\u65b9\u5f0f\u3002\u80fd\u591f\u5728\u524d\u671f\uff0c\u89e3\u51b3100%\u7684\u7b97\u6cd5\u95ee\u9898\u3002\u4e5f\u80fd\u5728\u6781\u7aef\u914d\u7f6e\u4e0b\uff0c\u6a21\u62df\u6781\u7aef\u5de5\u4f5c\u73af\u5883\uff0c\u80fd\u591f\u7b80\u5355\uff0c\u76f4\u89c2\u7684\u5c55\u793a\u51fa\u9002\u914d\u5668\u7684\u7a33\u5b9a\u6027\u548c\u5de5\u4f5c\u6027\u80fd\u3002"),(0,a.kt)("h4",{id:"11-\u6d4b\u8bd5\u539f\u7406"},"1.1 \u6d4b\u8bd5\u539f\u7406"),(0,a.kt)("p",null,"\u5047\u8bbe\u53d1\u9001\u6570\u636e\u4e3a{0,1,2,3,4}\uff0c\u8fde\u7eed\u53d1\u900110\u6b21\u3002\n\u5f53bufferLength=1\u65f6\uff0c\u4f1a\u5148\u63a5\u6536\u4e00\u4e2a\u5b57\u8282\uff0c\u7136\u540e\u9002\u914d\u5668\u5224\u65ad\u65e0\u6cd5\u89e3\u6790\uff0c\u7136\u540e\u7f13\u5b58\uff0c\u7136\u540e\u518d\u63a5\u6536\u4e0b\u4e00\u4e2a\u5b57\u8282\uff0c\u76f4\u5230\u6210\u529f\u89e3\u6790\u4e00\u4e2a\u5b8c\u6574\u6570\u636e\u5305\u3002\u8be5\u6a21\u5f0f\u89e3\u51b3\u7684\u5c31\u662f\u5927\u5bb6\u6240\u8bf4\u7684\u5206\u5305\uff0c\u4e5f\u5c31\u662f\u80fd\u5f88\u597d\u7684\u6a21\u62df",(0,a.kt)("strong",{parentName:"p"},"\u7f51\u7edc\u5f88\u5dee"),"\u7684\u73af\u5883\u3002\n\u5f53bufferLength>5\u65f6,\u5047\u5982\u4e3a8\uff0c\u5219\u4f1a\u5148\u63a5\u6536{0,1,2,3,4,0,1,2}\uff0c\u7136\u540e\u9002\u914d\u5668\u6210\u529f\u5224\u65ad\u89e3\u6790\u524d\u4e94\u5b57\u8282\uff0c\u7136\u540e\u7f13\u5b58\u540e\u4e09\u5b57\u8282\uff0c\u7136\u540e\u518d\u63a5\u6536\u4e0b\u4e00\u4e2a\u7eed\u5305\uff0c\u76f4\u5230\u89e3\u6790\u7ed3\u675f\u3002"),(0,a.kt)("h4",{id:"12-\u6d4b\u8bd5\u4e8b\u9879"},"1.2 \u6d4b\u8bd5\u4e8b\u9879"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"bufferLength\u5e94\u8be5\u591a\u6b21\u8bbe\u7f6e\uff0c\u4e14\u6700\u597d\u4e0d\u8981\u6574\u9664\u4e8e\u53d1\u9001\u6570\u636e\u7684\u957f\u5ea6\uff0c\u8fd9\u6837\u907f\u514d\u5de7\u5408\u53d1\u751f\uff0c\u6d4b\u4e0d\u51fa\u6781\u7aef\u95ee\u9898\u3002"),(0,a.kt)("li",{parentName:"ol"},"Run\u7684\u6b21\u6570\u5e94\u8be5\u591a\u8bbe\uff0c\u6a21\u62df\u9ad8\u9891\u60c5\u51b5\u3002")),(0,a.kt)("h2",{id:"\u4e8ctcp\u9002\u914d\u5668"},"\u4e8c\u3001Tcp\u9002\u914d\u5668"),(0,a.kt)("p",null,"Tcp\u9002\u914d\u5668\u7684\u5de5\u4f5c\u73af\u5883\uff0c\u53ea\u9700\u8003\u8651\u5355\u7ebf\u7a0b\u5373\u53ef\u3002\u56e0\u4e3a\u662f\u5ba2\u6237\u7aef\u4e0e\u9002\u914d\u5668\u662f\u4e00\u4e00\u5bf9\u5e94\u7684\u3002"),(0,a.kt)("p",null,"\u4e0b\u5217\u4ee5 ",(0,a.kt)("a",{parentName:"p",href:"/touchsocket/docs/fixedheaderpackageadapter"},"\u56fa\u5b9a\u5305\u5934\u6570\u636e\u5904\u7406\u9002\u914d\u5668")," \u4e3a\u4f8b"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-csharp"},'//Tcp\u9002\u914d\u5668\u6d4b\u8bd5\n//bufferLength\u7684\u4f5c\u7528\u662f\u6a21\u62dftcp\u63a5\u6536\u7f13\u5b58\u533a\uff0c\u4f8b\u5982\uff1a\n\n//\u53d1\u9001\u6570\u636e\u4e3a{0,1,2,3,4}\u65f6\n//\u5f53bufferLength=1\u65f6\uff0c\u4f1a\u5148\u63a5\u6536\u4e00\u4e2a\u5b57\u8282\uff0c\u7136\u540e\u9002\u914d\u5668\u5224\u65ad\u65e0\u6cd5\u89e3\u6790\uff0c\u7136\u540e\u7f13\u5b58\uff0c\u7136\u540e\u518d\u63a5\u6536\u4e0b\u4e00\u4e2a\u5b57\u8282\uff0c\u76f4\u5230\u6210\u529f\u89e3\u6790\u3002\n//\u8be5\u6a21\u5f0f\u80fd\u5f88\u597d\u7684\u6a21\u62df\u7f51\u7edc\u5f88\u5dee\u7684\u73af\u5883\u3002\n//\u5f53bufferLength=8\u65f6\uff0c\u4f1a\u5148\u63a5\u6536{0,1,2,3,4,0,1,2}\uff0c\u7136\u540e\u9002\u914d\u5668\u5224\u65ad\u89e3\u6790\u524d\u4e94\u5b57\u8282\uff0c\u7136\u540e\u7f13\u5b58\u540e\u4e09\u5b57\u8282\uff0c\u7136\u540e\u518d\u63a5\u6536\u4e0b\u4e00\u4e2a\u7eed\u5305\uff0c\u76f4\u5230\u89e3\u6790\u7ed3\u675f\n\nfor (int bufferLength = 1; bufferLength < 1024 * 10; bufferLength += 1024)\n{\n bool isSuccess = true;\n var data = new byte[] { 0, 1, 2, 3, 4 };\n DataAdapterTester tester = DataAdapterTester.CreateTester(new FixedHeaderPackageAdapter()\n , bufferLength, (byteBlock, requestInfo) =>\n {\n //\u6b64\u5904\u5c31\u662f\u63a5\u6536\uff0c\u5982\u679c\u662f\u81ea\u5b9a\u4e49\u9002\u914d\u5668\uff0c\u53ef\u4ee5\u5c06requestInfo\u5f3a\u5236\u8f6c\u6362\u4e3a\u5b9e\u9645\u5bf9\u8c61\uff0c\u7136\u540e\u5224\u65ad\u6570\u636e\u7684\u786e\u5b9a\u6027\n if (byteBlock.Len!=5||(!byteBlock.ToArray().SequenceEqual(data)))\n {\n isSuccess = false;\n }\n });\n \n //data\u662f\u53d1\u9001\u7684\u6570\u636e\uff0c\u56e0\u4e3a\u6b64\u5904\u4f7f\u7528\u7684\u662f\u56fa\u5b9a\u5305\u5934\u9002\u914d\u5668\uff0c\n //\u53d1\u9001\u524d\u9002\u914d\u5668\u4f1a\u81ea\u52a8\u6dfb\u52a0\u5305\u5934\uff0c\u6240\u4ee5\uff0c\u6b64\u5904\u53ea\u53d1\u9001\u6570\u636e\u5373\u53ef\u3002\n //\u5982\u679c\u6d4b\u8bd5\u7684\u662f\u81ea\u5b9a\u4e49\u9002\u914d\u5668\uff0c\u53d1\u9001\u524d\u6ca1\u6709\u5c01\u88c5\u7684\u8bdd\uff0c\u5c31\u9700\u8981\u81ea\u884c\u6784\u5efa\u53d1\u9001\u6570\u636e\u3002\n //\u968f\u540e\u7684\u4e24\u4e2a\u53c2\u6570\uff0c10,10\u662f\u6d4b\u8bd5\u6b21\u6570\uff0c\u548c\u671f\u671b\u6b21\u6570\uff0c\u4e00\u822c\u8fd9\u4e24\u4e2a\u503c\u662f\u76f8\u7b49\u7684\u3002\n //\u610f\u4e3a\uff1a\u672c\u6b21\u6570\u636e\u5c06\u5faa\u73af\u53d1\u900110\u6b21\uff0c\u4e14\u4f1a\u63a5\u653610\u6b21\u3002\u4e0d\u7136\u6b64\u5904\u4f1a\u4e00\u76f4\u963b\u585e\u3002\n //\u6700\u540e\u4e00\u4e2a\u53c2\u6570\u662f\u6d4b\u8bd5\u7684\u6700\u5927\u8d85\u65f6\u65f6\u95f4\u3002\n\n var time = tester.Run(data, 10, 10, 1000 * 10);\n Thread.Sleep(1000);\n Console.WriteLine($"\u6d4b\u8bd5\u7ed3\u675f\uff0c\u72b6\u6001:{isSuccess}\uff0c\u7528\u65f6\uff1a{time}");\n}\nConsole.WriteLine("\u6d4b\u8bd5\u7ed3\u675f");\n\n')))}d.isMDXComponent=!0}}]);
\ No newline at end of file
"use strict";(self.webpackChunktouchsocket=self.webpackChunktouchsocket||[]).push([[9769],{3905:(e,t,c)=>{c.d(t,{Zo:()=>u,kt:()=>d});var n=c(7294);function r(e,t,c){return t in e?Object.defineProperty(e,t,{value:c,enumerable:!0,configurable:!0,writable:!0}):e[t]=c,e}function o(e,t){var c=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),c.push.apply(c,n)}return c}function p(e){for(var t=1;t<arguments.length;t++){var c=null!=arguments[t]?arguments[t]:{};t%2?o(Object(c),!0).forEach((function(t){r(e,t,c[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(c)):o(Object(c)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(c,t))}))}return e}function l(e,t){if(null==e)return{};var c,n,r=function(e,t){if(null==e)return{};var c,n,r={},o=Object.keys(e);for(n=0;n<o.length;n++)c=o[n],t.indexOf(c)>=0||(r[c]=e[c]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n<o.length;n++)c=o[n],t.indexOf(c)>=0||Object.prototype.propertyIsEnumerable.call(e,c)&&(r[c]=e[c])}return r}var a=n.createContext({}),i=function(e){var t=n.useContext(a),c=t;return e&&(c="function"==typeof e?e(t):p(p({},t),e)),c},u=function(e){var t=i(e.components);return n.createElement(a.Provider,{value:t},e.children)},s={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},h=n.forwardRef((function(e,t){var c=e.components,r=e.mdxType,o=e.originalType,a=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),h=i(c),d=r,m=h["".concat(a,".").concat(d)]||h[d]||s[d]||o;return c?n.createElement(m,p(p({ref:t},u),{},{components:c})):n.createElement(m,p({ref:t},u))}));function d(e,t){var c=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=c.length,p=new Array(o);p[0]=h;var l={};for(var a in t)hasOwnProperty.call(t,a)&&(l[a]=t[a]);l.originalType=e,l.mdxType="string"==typeof e?e:r,p[1]=l;for(var i=2;i<o;i++)p[i]=c[i];return n.createElement.apply(null,p)}return n.createElement.apply(null,c)}h.displayName="MDXCreateElement"},9882:(e,t,c)=>{c.r(t),c.d(t,{assets:()=>a,contentTitle:()=>p,default:()=>s,frontMatter:()=>o,metadata:()=>l,toc:()=>i});var n=c(7462),r=(c(7294),c(3905));const o={id:"createtouchrpcclient",title:"\u521b\u5efaTouchRpc\u5ba2\u6237\u7aef"},p=void 0,l={unversionedId:"createtouchrpcclient",id:"createtouchrpcclient",title:"\u521b\u5efaTouchRpc\u5ba2\u6237\u7aef",description:"\u4e00\u3001\u8bf4\u660e",source:"@site/docs/createtouchrpcclient.mdx",sourceDirName:".",slug:"/createtouchrpcclient",permalink:"/touchsocket/docs/createtouchrpcclient",draft:!1,editUrl:"https://gitee.com/rrqm_home/touchsocket/tree/master/handbook/docs/createtouchrpcclient.mdx",tags:[],version:"current",lastUpdatedBy:"\u82e5\u6c5d\u68cb\u8317",lastUpdatedAt:1675238151,formattedLastUpdatedAt:"Feb 1, 2023",frontMatter:{id:"createtouchrpcclient",title:"\u521b\u5efaTouchRpc\u5ba2\u6237\u7aef"},sidebar:"docs",previous:{title:"\u521b\u5efaTouchRpc\u670d\u52a1\u5668",permalink:"/touchsocket/docs/createtouchrpcservice"},next:{title:"\u57fa\u7840\u529f\u80fd",permalink:"/touchsocket/docs/touchrpcbase"}},a={},i=[{value:"\u4e00\u3001\u8bf4\u660e",id:"\u4e00\u8bf4\u660e",level:2},{value:"\u4e8c\u3001\u521b\u5efa",id:"\u4e8c\u521b\u5efa",level:2},{value:"2.1 TcpTouchRpcClient",id:"21-tcptouchrpcclient",level:4},{value:"2.2 HttpTouchRpcClient",id:"22-httptouchrpcclient",level:4},{value:"2.3 UdpTouchRpc",id:"23-udptouchrpc",level:4},{value:"2.4 WSTouchRpcClient",id:"24-wstouchrpcclient",level:4}],u={toc:i};function s(e){let{components:t,...c}=e;return(0,r.kt)("wrapper",(0,n.Z)({},u,c,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h2",{id:"\u4e00\u8bf4\u660e"},"\u4e00\u3001\u8bf4\u660e"),(0,r.kt)("p",null,"TouchRpc\u5ba2\u6237\u7aef\u5bf9\u5e94\u7684\uff0c\u4e5f\u6709\u56db\u79cd\u4e0d\u540c\u534f\u8bae\u7684\u7248\u672c\u3002"),(0,r.kt)("h2",{id:"\u4e8c\u521b\u5efa"},"\u4e8c\u3001\u521b\u5efa"),(0,r.kt)("a",{name:"Es0jr"}),(0,r.kt)("h4",{id:"21-tcptouchrpcclient"},"2.1 TcpTouchRpcClient"),(0,r.kt)("p",null,"\u57fa\u672c\u521b\u5efa\u5982\u4e0b\uff0c\u652f\u6301",(0,r.kt)("a",{parentName:"p",href:"/touchsocket/docs/createtcpclient"},"\u521b\u5efaTcpClient"),"\u7684\u6240\u6709\u914d\u7f6e\u3002"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},'TcpTouchRpcClient client = new TcpTouchRpcClient();\nclient.Setup(new TouchSocketConfig()\n .SetRemoteIPHost("127.0.0.1:7789")\n .SetVerifyToken("TouchRpc"));\nclient.Connect();\n')),(0,r.kt)("a",{name:"clQGY"}),(0,r.kt)("h4",{id:"22-httptouchrpcclient"},"2.2 HttpTouchRpcClient"),(0,r.kt)("p",null,"\u57fa\u672c\u521b\u5efa\u5982\u4e0b\uff0c\u652f\u6301",(0,r.kt)("a",{parentName:"p",href:"/touchsocket/docs/createtcpclient"},"\u521b\u5efaTcpClient"),"\u7684\u6240\u6709\u914d\u7f6e\u3002"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},'HttpTouchRpcClient client = new HttpTouchRpcClient();\nclient.Setup(new TouchSocketConfig()\n .SetRemoteIPHost("127.0.0.1:7789")\n .SetVerifyToken("TouchRpc"));\nclient.Connect();\n')),(0,r.kt)("a",{name:"te59s"}),(0,r.kt)("h4",{id:"23-udptouchrpc"},"2.3 UdpTouchRpc"),(0,r.kt)("p",null,"\u57fa\u672c\u521b\u5efa\u5982\u4e0b\uff0c\u652f\u6301@\u7684\u6240\u6709\u914d\u7f6e\u3002"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},'UdpTouchRpc client = new UdpTouchRpc();\nclient.Setup(new TouchSocketConfig()\n .SetBindIPHost(7794)\n .SetRemoteIPHost("127.0.0.1:7789"));//\u8bbe\u7f6e\u76ee\u6807\u5730\u5740\u3002\nclient.Start();\n')),(0,r.kt)("a",{name:"WTDXI"}),(0,r.kt)("h4",{id:"24-wstouchrpcclient"},"2.4 WSTouchRpcClient"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},' WSTouchRpcClient client = new WSTouchRpcClient();\n client.Setup(new TouchSocketConfig()\n .SetRemoteIPHost("ws://127.0.0.1:5000/wstouchrpc"));\n client.ConnectAsync();\n')))}s.isMDXComponent=!0}}]);
\ No newline at end of file
"use strict";(self.webpackChunktouchsocket=self.webpackChunktouchsocket||[]).push([[9769],{3905:(e,t,c)=>{c.d(t,{Zo:()=>u,kt:()=>d});var n=c(7294);function r(e,t,c){return t in e?Object.defineProperty(e,t,{value:c,enumerable:!0,configurable:!0,writable:!0}):e[t]=c,e}function o(e,t){var c=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),c.push.apply(c,n)}return c}function p(e){for(var t=1;t<arguments.length;t++){var c=null!=arguments[t]?arguments[t]:{};t%2?o(Object(c),!0).forEach((function(t){r(e,t,c[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(c)):o(Object(c)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(c,t))}))}return e}function l(e,t){if(null==e)return{};var c,n,r=function(e,t){if(null==e)return{};var c,n,r={},o=Object.keys(e);for(n=0;n<o.length;n++)c=o[n],t.indexOf(c)>=0||(r[c]=e[c]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n<o.length;n++)c=o[n],t.indexOf(c)>=0||Object.prototype.propertyIsEnumerable.call(e,c)&&(r[c]=e[c])}return r}var a=n.createContext({}),i=function(e){var t=n.useContext(a),c=t;return e&&(c="function"==typeof e?e(t):p(p({},t),e)),c},u=function(e){var t=i(e.components);return n.createElement(a.Provider,{value:t},e.children)},s={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},h=n.forwardRef((function(e,t){var c=e.components,r=e.mdxType,o=e.originalType,a=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),h=i(c),d=r,m=h["".concat(a,".").concat(d)]||h[d]||s[d]||o;return c?n.createElement(m,p(p({ref:t},u),{},{components:c})):n.createElement(m,p({ref:t},u))}));function d(e,t){var c=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=c.length,p=new Array(o);p[0]=h;var l={};for(var a in t)hasOwnProperty.call(t,a)&&(l[a]=t[a]);l.originalType=e,l.mdxType="string"==typeof e?e:r,p[1]=l;for(var i=2;i<o;i++)p[i]=c[i];return n.createElement.apply(null,p)}return n.createElement.apply(null,c)}h.displayName="MDXCreateElement"},9882:(e,t,c)=>{c.r(t),c.d(t,{assets:()=>a,contentTitle:()=>p,default:()=>s,frontMatter:()=>o,metadata:()=>l,toc:()=>i});var n=c(7462),r=(c(7294),c(3905));const o={id:"createtouchrpcclient",title:"\u521b\u5efaTouchRpc\u5ba2\u6237\u7aef"},p=void 0,l={unversionedId:"createtouchrpcclient",id:"createtouchrpcclient",title:"\u521b\u5efaTouchRpc\u5ba2\u6237\u7aef",description:"\u4e00\u3001\u8bf4\u660e",source:"@site/docs/createtouchrpcclient.mdx",sourceDirName:".",slug:"/createtouchrpcclient",permalink:"/touchsocket/docs/createtouchrpcclient",draft:!1,editUrl:"https://gitee.com/rrqm_home/touchsocket/tree/master/handbook/docs/createtouchrpcclient.mdx",tags:[],version:"current",lastUpdatedBy:"\u82e5\u6c5d\u68cb\u8317",lastUpdatedAt:1675240162,formattedLastUpdatedAt:"Feb 1, 2023",frontMatter:{id:"createtouchrpcclient",title:"\u521b\u5efaTouchRpc\u5ba2\u6237\u7aef"},sidebar:"docs",previous:{title:"\u521b\u5efaTouchRpc\u670d\u52a1\u5668",permalink:"/touchsocket/docs/createtouchrpcservice"},next:{title:"\u57fa\u7840\u529f\u80fd",permalink:"/touchsocket/docs/touchrpcbase"}},a={},i=[{value:"\u4e00\u3001\u8bf4\u660e",id:"\u4e00\u8bf4\u660e",level:2},{value:"\u4e8c\u3001\u521b\u5efa",id:"\u4e8c\u521b\u5efa",level:2},{value:"2.1 TcpTouchRpcClient",id:"21-tcptouchrpcclient",level:4},{value:"2.2 HttpTouchRpcClient",id:"22-httptouchrpcclient",level:4},{value:"2.3 UdpTouchRpc",id:"23-udptouchrpc",level:4},{value:"2.4 WSTouchRpcClient",id:"24-wstouchrpcclient",level:4}],u={toc:i};function s(e){let{components:t,...c}=e;return(0,r.kt)("wrapper",(0,n.Z)({},u,c,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h2",{id:"\u4e00\u8bf4\u660e"},"\u4e00\u3001\u8bf4\u660e"),(0,r.kt)("p",null,"TouchRpc\u5ba2\u6237\u7aef\u5bf9\u5e94\u7684\uff0c\u4e5f\u6709\u56db\u79cd\u4e0d\u540c\u534f\u8bae\u7684\u7248\u672c\u3002"),(0,r.kt)("h2",{id:"\u4e8c\u521b\u5efa"},"\u4e8c\u3001\u521b\u5efa"),(0,r.kt)("a",{name:"Es0jr"}),(0,r.kt)("h4",{id:"21-tcptouchrpcclient"},"2.1 TcpTouchRpcClient"),(0,r.kt)("p",null,"\u57fa\u672c\u521b\u5efa\u5982\u4e0b\uff0c\u652f\u6301",(0,r.kt)("a",{parentName:"p",href:"/touchsocket/docs/createtcpclient"},"\u521b\u5efaTcpClient"),"\u7684\u6240\u6709\u914d\u7f6e\u3002"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},'TcpTouchRpcClient client = new TcpTouchRpcClient();\nclient.Setup(new TouchSocketConfig()\n .SetRemoteIPHost("127.0.0.1:7789")\n .SetVerifyToken("TouchRpc"));\nclient.Connect();\n')),(0,r.kt)("a",{name:"clQGY"}),(0,r.kt)("h4",{id:"22-httptouchrpcclient"},"2.2 HttpTouchRpcClient"),(0,r.kt)("p",null,"\u57fa\u672c\u521b\u5efa\u5982\u4e0b\uff0c\u652f\u6301",(0,r.kt)("a",{parentName:"p",href:"/touchsocket/docs/createtcpclient"},"\u521b\u5efaTcpClient"),"\u7684\u6240\u6709\u914d\u7f6e\u3002"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},'HttpTouchRpcClient client = new HttpTouchRpcClient();\nclient.Setup(new TouchSocketConfig()\n .SetRemoteIPHost("127.0.0.1:7789")\n .SetVerifyToken("TouchRpc"));\nclient.Connect();\n')),(0,r.kt)("a",{name:"te59s"}),(0,r.kt)("h4",{id:"23-udptouchrpc"},"2.3 UdpTouchRpc"),(0,r.kt)("p",null,"\u57fa\u672c\u521b\u5efa\u5982\u4e0b\uff0c\u652f\u6301@\u7684\u6240\u6709\u914d\u7f6e\u3002"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},'UdpTouchRpc client = new UdpTouchRpc();\nclient.Setup(new TouchSocketConfig()\n .SetBindIPHost(7794)\n .SetRemoteIPHost("127.0.0.1:7789"));//\u8bbe\u7f6e\u76ee\u6807\u5730\u5740\u3002\nclient.Start();\n')),(0,r.kt)("a",{name:"WTDXI"}),(0,r.kt)("h4",{id:"24-wstouchrpcclient"},"2.4 WSTouchRpcClient"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},' WSTouchRpcClient client = new WSTouchRpcClient();\n client.Setup(new TouchSocketConfig()\n .SetRemoteIPHost("ws://127.0.0.1:5000/wstouchrpc"));\n client.ConnectAsync();\n')))}s.isMDXComponent=!0}}]);
\ No newline at end of file
(()=>{"use strict";var e,a,f,c,b,d={},t={};function r(e){var a=t[e];if(void 0!==a)return a.exports;var f=t[e]={exports:{}};return d[e].call(f.exports,f,f.exports,r),f.exports}r.m=d,e=[],r.O=(a,f,c,b)=>{if(!f){var d=1/0;for(i=0;i<e.length;i++){f=e[i][0],c=e[i][1],b=e[i][2];for(var t=!0,o=0;o<f.length;o++)(!1&b||d>=b)&&Object.keys(r.O).every((e=>r.O[e](f[o])))?f.splice(o--,1):(t=!1,b<d&&(d=b));if(t){e.splice(i--,1);var n=c();void 0!==n&&(a=n)}}return a}b=b||0;for(var i=e.length;i>0&&e[i-1][2]>b;i--)e[i]=e[i-1];e[i]=[f,c,b]},r.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return r.d(a,{a:a}),a},f=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,r.t=function(e,c){if(1&c&&(e=this(e)),8&c)return e;if("object"==typeof e&&e){if(4&c&&e.__esModule)return e;if(16&c&&"function"==typeof e.then)return e}var b=Object.create(null);r.r(b);var d={};a=a||[null,f({}),f([]),f(f)];for(var t=2&c&&e;"object"==typeof t&&!~a.indexOf(t);t=f(t))Object.getOwnPropertyNames(t).forEach((a=>d[a]=()=>e[a]));return d.default=()=>e,r.d(b,d),b},r.d=(e,a)=>{for(var f in a)r.o(a,f)&&!r.o(e,f)&&Object.defineProperty(e,f,{enumerable:!0,get:a[f]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((a,f)=>(r.f[f](e,a),a)),[])),r.u=e=>"assets/js/"+({53:"935f2afb",138:"fce76f89",230:"329302c4",472:"6032078b",487:"ba9c7ecd",505:"28d8f037",631:"223951e7",803:"430053de",904:"d5d2094c",908:"8154dd80",1270:"afd686d3",1285:"1c9cad99",1302:"88be757d",1317:"11fc8f46",1569:"eafaca75",1586:"04ff01fb",1592:"a82e3754",1601:"b806365f",1687:"389c2360",1705:"d6be6cb7",1793:"da3959dc",1822:"f05a39b7",1868:"41b30073",1895:"9e2cc891",1965:"17443a98",1969:"763782ab",1971:"b0d79caf",2022:"915634cf",2289:"3030335d",2373:"7c171c7d",2375:"578e6f54",2416:"9a8bd036",2671:"11f9f480",2894:"41627674",2903:"0fc86718",2934:"e782541c",2996:"0afce4d0",3214:"8c4cc064",3285:"b1f68223",3371:"d22033f9",3503:"b7e03a75",3635:"8973b48c",4018:"078d73b8",4195:"c4f5d8e4",4456:"7a6724ae",4649:"e5d5df95",4724:"b4d3dab5",4850:"91a311b4",4929:"47f1b9ba",4960:"d3845169",5215:"4ecf139e",5264:"9bfb9f12",5683:"355b4941",5721:"95c62853",5725:"19a46420",5873:"3ab343cc",5983:"2c06b999",6050:"d6520aa6",6128:"b992e8b3",6171:"7b93349f",6191:"a81d4448",6373:"320af078",6390:"cbd4f89d",6487:"aa4c723b",6505:"965c04d6",6746:"e7e0ef60",7016:"dfe172e5",7062:"68e3f9c8",7162:"0a7a9b32",7278:"94601e7d",7436:"c8245f17",7453:"94e3a799",7462:"1ec5dc39",7790:"ce02ea51",7918:"17896441",7920:"1a4e3797",7986:"bcf858d2",7987:"0654e75d",8032:"c8d1f2bf",8102:"df41208d",8300:"177fd31f",8411:"aa2c2bac",8494:"5137840a",8610:"eb7c3b1b",8707:"4c79e569",8719:"a2c90a25",8808:"6bf8fe32",8835:"a46d2111",9030:"4d13c877",9035:"01fa1a8d",9198:"8e1e2f35",9253:"adf44bc8",9311:"53cff02b",9514:"1be78505",9541:"09a85799",9660:"a14859b4",9750:"0b8ef44c",9769:"9106ea79",9911:"13b149a4",9925:"0c2b5d1a",9954:"8e5f0e39"}[e]||e)+"."+{53:"4fa6fc2c",138:"010f5ea9",230:"249a948b",472:"d1820c31",487:"32dc64d2",505:"d6707531",631:"8d06409f",803:"97a1f95b",904:"118155f0",908:"e7b90a40",1270:"99e28ca5",1285:"c74d911f",1302:"570b77f8",1317:"03b3b1db",1569:"701f8bb4",1586:"84d73f02",1592:"6c72fa9c",1601:"5a258bf4",1687:"dc267d72",1705:"92321cf6",1793:"ad5bae50",1822:"62f5f76b",1868:"88c66a11",1895:"0ea5c312",1965:"1a16a19e",1969:"080037d7",1971:"c31cb6d8",2022:"91913af1",2289:"25aed8a1",2373:"cb3a4077",2375:"582b3ec5",2416:"9dc902ae",2671:"1f045afd",2894:"e57effb8",2903:"e481a87a",2934:"ff67bd90",2996:"e2640cdf",3214:"2903ca06",3285:"f7edf05d",3371:"63fe54f3",3503:"976cde82",3635:"e1bb3275",4018:"54288f61",4195:"ed155dc3",4456:"1b859599",4649:"2c32884c",4724:"b452fab0",4850:"c9f8664a",4929:"cdd48a18",4960:"86995632",4972:"36419c19",5215:"e746b0ed",5264:"02ff299d",5525:"c53056dc",5683:"36414f30",5721:"ff665d50",5725:"fbad7614",5873:"2d2602a7",5983:"ec3af16e",6050:"ca22c63f",6128:"6a98dd74",6171:"57aa392b",6191:"916e857c",6373:"34a7b954",6390:"cc0b4777",6487:"ddda1895",6505:"495d92e3",6746:"a120f8c2",7016:"0df73425",7062:"8e3a81df",7162:"36791b0f",7278:"5d94be73",7436:"814b32ef",7453:"5ad1bcb1",7462:"389b86e1",7790:"b35e39e5",7918:"a27ce60f",7920:"74f8f5bf",7986:"3f19491d",7987:"8db102f4",8032:"1173bba9",8102:"71b7d3c1",8300:"ede3771d",8411:"e5d3f43d",8443:"0183610a",8494:"54f15e8b",8610:"0dba8683",8707:"f71fc369",8719:"1483c714",8808:"de0c400e",8835:"ee20740c",9030:"36031c74",9035:"d562e723",9198:"39216c17",9253:"a52fd3d1",9311:"6893293e",9514:"4b3d2d29",9523:"c8c47bae",9541:"a53b71c6",9660:"eb042ba8",9750:"49139891",9769:"330ef82c",9911:"924236b5",9925:"13fc7772",9954:"927d9bfc"}[e]+".js",r.miniCssF=e=>{},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),c={},b="touchsocket:",r.l=(e,a,f,d)=>{if(c[e])c[e].push(a);else{var t,o;if(void 0!==f)for(var n=document.getElementsByTagName("script"),i=0;i<n.length;i++){var u=n[i];if(u.getAttribute("src")==e||u.getAttribute("data-webpack")==b+f){t=u;break}}t||(o=!0,(t=document.createElement("script")).charset="utf-8",t.timeout=120,r.nc&&t.setAttribute("nonce",r.nc),t.setAttribute("data-webpack",b+f),t.src=e),c[e]=[a];var l=(a,f)=>{t.onerror=t.onload=null,clearTimeout(s);var b=c[e];if(delete c[e],t.parentNode&&t.parentNode.removeChild(t),b&&b.forEach((e=>e(f))),a)return a(f)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:t}),12e4);t.onerror=l.bind(null,t.onerror),t.onload=l.bind(null,t.onload),o&&document.head.appendChild(t)}},r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.p="/touchsocket/",r.gca=function(e){return e={17896441:"7918",41627674:"2894","935f2afb":"53",fce76f89:"138","329302c4":"230","6032078b":"472",ba9c7ecd:"487","28d8f037":"505","223951e7":"631","430053de":"803",d5d2094c:"904","8154dd80":"908",afd686d3:"1270","1c9cad99":"1285","88be757d":"1302","11fc8f46":"1317",eafaca75:"1569","04ff01fb":"1586",a82e3754:"1592",b806365f:"1601","389c2360":"1687",d6be6cb7:"1705",da3959dc:"1793",f05a39b7:"1822","41b30073":"1868","9e2cc891":"1895","17443a98":"1965","763782ab":"1969",b0d79caf:"1971","915634cf":"2022","3030335d":"2289","7c171c7d":"2373","578e6f54":"2375","9a8bd036":"2416","11f9f480":"2671","0fc86718":"2903",e782541c:"2934","0afce4d0":"2996","8c4cc064":"3214",b1f68223:"3285",d22033f9:"3371",b7e03a75:"3503","8973b48c":"3635","078d73b8":"4018",c4f5d8e4:"4195","7a6724ae":"4456",e5d5df95:"4649",b4d3dab5:"4724","91a311b4":"4850","47f1b9ba":"4929",d3845169:"4960","4ecf139e":"5215","9bfb9f12":"5264","355b4941":"5683","95c62853":"5721","19a46420":"5725","3ab343cc":"5873","2c06b999":"5983",d6520aa6:"6050",b992e8b3:"6128","7b93349f":"6171",a81d4448:"6191","320af078":"6373",cbd4f89d:"6390",aa4c723b:"6487","965c04d6":"6505",e7e0ef60:"6746",dfe172e5:"7016","68e3f9c8":"7062","0a7a9b32":"7162","94601e7d":"7278",c8245f17:"7436","94e3a799":"7453","1ec5dc39":"7462",ce02ea51:"7790","1a4e3797":"7920",bcf858d2:"7986","0654e75d":"7987",c8d1f2bf:"8032",df41208d:"8102","177fd31f":"8300",aa2c2bac:"8411","5137840a":"8494",eb7c3b1b:"8610","4c79e569":"8707",a2c90a25:"8719","6bf8fe32":"8808",a46d2111:"8835","4d13c877":"9030","01fa1a8d":"9035","8e1e2f35":"9198",adf44bc8:"9253","53cff02b":"9311","1be78505":"9514","09a85799":"9541",a14859b4:"9660","0b8ef44c":"9750","9106ea79":"9769","13b149a4":"9911","0c2b5d1a":"9925","8e5f0e39":"9954"}[e]||e,r.p+r.u(e)},(()=>{var e={1303:0,532:0};r.f.j=(a,f)=>{var c=r.o(e,a)?e[a]:void 0;if(0!==c)if(c)f.push(c[2]);else if(/^(1303|532)$/.test(a))e[a]=0;else{var b=new Promise(((f,b)=>c=e[a]=[f,b]));f.push(c[2]=b);var d=r.p+r.u(a),t=new Error;r.l(d,(f=>{if(r.o(e,a)&&(0!==(c=e[a])&&(e[a]=void 0),c)){var b=f&&("load"===f.type?"missing":f.type),d=f&&f.target&&f.target.src;t.message="Loading chunk "+a+" failed.\n("+b+": "+d+")",t.name="ChunkLoadError",t.type=b,t.request=d,c[1](t)}}),"chunk-"+a,a)}},r.O.j=a=>0===e[a];var a=(a,f)=>{var c,b,d=f[0],t=f[1],o=f[2],n=0;if(d.some((a=>0!==e[a]))){for(c in t)r.o(t,c)&&(r.m[c]=t[c]);if(o)var i=o(r)}for(a&&a(f);n<d.length;n++)b=d[n],r.o(e,b)&&e[b]&&e[b][0](),e[b]=0;return r.O(i)},f=self.webpackChunktouchsocket=self.webpackChunktouchsocket||[];f.forEach(a.bind(null,0)),f.push=a.bind(null,f.push.bind(f))})()})();
\ No newline at end of file
(()=>{"use strict";var e,a,f,c,b,d={},t={};function r(e){var a=t[e];if(void 0!==a)return a.exports;var f=t[e]={exports:{}};return d[e].call(f.exports,f,f.exports,r),f.exports}r.m=d,e=[],r.O=(a,f,c,b)=>{if(!f){var d=1/0;for(i=0;i<e.length;i++){f=e[i][0],c=e[i][1],b=e[i][2];for(var t=!0,o=0;o<f.length;o++)(!1&b||d>=b)&&Object.keys(r.O).every((e=>r.O[e](f[o])))?f.splice(o--,1):(t=!1,b<d&&(d=b));if(t){e.splice(i--,1);var n=c();void 0!==n&&(a=n)}}return a}b=b||0;for(var i=e.length;i>0&&e[i-1][2]>b;i--)e[i]=e[i-1];e[i]=[f,c,b]},r.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return r.d(a,{a:a}),a},f=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,r.t=function(e,c){if(1&c&&(e=this(e)),8&c)return e;if("object"==typeof e&&e){if(4&c&&e.__esModule)return e;if(16&c&&"function"==typeof e.then)return e}var b=Object.create(null);r.r(b);var d={};a=a||[null,f({}),f([]),f(f)];for(var t=2&c&&e;"object"==typeof t&&!~a.indexOf(t);t=f(t))Object.getOwnPropertyNames(t).forEach((a=>d[a]=()=>e[a]));return d.default=()=>e,r.d(b,d),b},r.d=(e,a)=>{for(var f in a)r.o(a,f)&&!r.o(e,f)&&Object.defineProperty(e,f,{enumerable:!0,get:a[f]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((a,f)=>(r.f[f](e,a),a)),[])),r.u=e=>"assets/js/"+({53:"935f2afb",138:"fce76f89",230:"329302c4",472:"6032078b",487:"ba9c7ecd",505:"28d8f037",631:"223951e7",803:"430053de",904:"d5d2094c",908:"8154dd80",1270:"afd686d3",1285:"1c9cad99",1302:"88be757d",1317:"11fc8f46",1569:"eafaca75",1586:"04ff01fb",1592:"a82e3754",1601:"b806365f",1687:"389c2360",1705:"d6be6cb7",1793:"da3959dc",1822:"f05a39b7",1868:"41b30073",1895:"9e2cc891",1965:"17443a98",1969:"763782ab",1971:"b0d79caf",2022:"915634cf",2289:"3030335d",2373:"7c171c7d",2375:"578e6f54",2416:"9a8bd036",2671:"11f9f480",2894:"41627674",2903:"0fc86718",2934:"e782541c",2996:"0afce4d0",3214:"8c4cc064",3285:"b1f68223",3371:"d22033f9",3503:"b7e03a75",3635:"8973b48c",4018:"078d73b8",4195:"c4f5d8e4",4456:"7a6724ae",4649:"e5d5df95",4724:"b4d3dab5",4850:"91a311b4",4929:"47f1b9ba",4960:"d3845169",5215:"4ecf139e",5264:"9bfb9f12",5683:"355b4941",5721:"95c62853",5725:"19a46420",5873:"3ab343cc",5983:"2c06b999",6050:"d6520aa6",6128:"b992e8b3",6171:"7b93349f",6191:"a81d4448",6373:"320af078",6390:"cbd4f89d",6487:"aa4c723b",6505:"965c04d6",6746:"e7e0ef60",7016:"dfe172e5",7062:"68e3f9c8",7162:"0a7a9b32",7278:"94601e7d",7436:"c8245f17",7453:"94e3a799",7462:"1ec5dc39",7790:"ce02ea51",7918:"17896441",7920:"1a4e3797",7986:"bcf858d2",7987:"0654e75d",8032:"c8d1f2bf",8102:"df41208d",8300:"177fd31f",8411:"aa2c2bac",8494:"5137840a",8610:"eb7c3b1b",8707:"4c79e569",8719:"a2c90a25",8808:"6bf8fe32",8835:"a46d2111",9030:"4d13c877",9035:"01fa1a8d",9198:"8e1e2f35",9253:"adf44bc8",9311:"53cff02b",9514:"1be78505",9541:"09a85799",9660:"a14859b4",9750:"0b8ef44c",9769:"9106ea79",9911:"13b149a4",9925:"0c2b5d1a",9954:"8e5f0e39"}[e]||e)+"."+{53:"4fa6fc2c",138:"010f5ea9",230:"249a948b",472:"d1820c31",487:"32dc64d2",505:"d6707531",631:"8d06409f",803:"97a1f95b",904:"118155f0",908:"e7b90a40",1270:"99e28ca5",1285:"4141d7e2",1302:"570b77f8",1317:"03b3b1db",1569:"701f8bb4",1586:"84d73f02",1592:"6c72fa9c",1601:"5a258bf4",1687:"dc267d72",1705:"92321cf6",1793:"3f3b9bab",1822:"62f5f76b",1868:"88c66a11",1895:"0ea5c312",1965:"1a16a19e",1969:"080037d7",1971:"c31cb6d8",2022:"91913af1",2289:"25aed8a1",2373:"cb3a4077",2375:"582b3ec5",2416:"9dc902ae",2671:"1f045afd",2894:"e57effb8",2903:"e481a87a",2934:"ff67bd90",2996:"e2640cdf",3214:"2903ca06",3285:"f7edf05d",3371:"63fe54f3",3503:"976cde82",3635:"e1bb3275",4018:"54288f61",4195:"ed155dc3",4456:"1b859599",4649:"2c32884c",4724:"b452fab0",4850:"c9f8664a",4929:"cdd48a18",4960:"86995632",4972:"36419c19",5215:"e746b0ed",5264:"02ff299d",5525:"c53056dc",5683:"36414f30",5721:"ff665d50",5725:"fbad7614",5873:"2d2602a7",5983:"ec3af16e",6050:"ca22c63f",6128:"6a98dd74",6171:"57aa392b",6191:"916e857c",6373:"34a7b954",6390:"cc0b4777",6487:"ddda1895",6505:"495d92e3",6746:"a120f8c2",7016:"9d461274",7062:"8e3a81df",7162:"36791b0f",7278:"5d94be73",7436:"814b32ef",7453:"5ad1bcb1",7462:"0188dd2b",7790:"b35e39e5",7918:"a27ce60f",7920:"74f8f5bf",7986:"3f19491d",7987:"8db102f4",8032:"1173bba9",8102:"71b7d3c1",8300:"ede3771d",8411:"e5d3f43d",8443:"0183610a",8494:"54f15e8b",8610:"0dba8683",8707:"f71fc369",8719:"1483c714",8808:"de0c400e",8835:"157b1d04",9030:"36031c74",9035:"d562e723",9198:"39216c17",9253:"a52fd3d1",9311:"6893293e",9514:"4b3d2d29",9523:"c8c47bae",9541:"a53b71c6",9660:"eb042ba8",9750:"49139891",9769:"675ae0b5",9911:"924236b5",9925:"13fc7772",9954:"927d9bfc"}[e]+".js",r.miniCssF=e=>{},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),c={},b="touchsocket:",r.l=(e,a,f,d)=>{if(c[e])c[e].push(a);else{var t,o;if(void 0!==f)for(var n=document.getElementsByTagName("script"),i=0;i<n.length;i++){var u=n[i];if(u.getAttribute("src")==e||u.getAttribute("data-webpack")==b+f){t=u;break}}t||(o=!0,(t=document.createElement("script")).charset="utf-8",t.timeout=120,r.nc&&t.setAttribute("nonce",r.nc),t.setAttribute("data-webpack",b+f),t.src=e),c[e]=[a];var l=(a,f)=>{t.onerror=t.onload=null,clearTimeout(s);var b=c[e];if(delete c[e],t.parentNode&&t.parentNode.removeChild(t),b&&b.forEach((e=>e(f))),a)return a(f)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:t}),12e4);t.onerror=l.bind(null,t.onerror),t.onload=l.bind(null,t.onload),o&&document.head.appendChild(t)}},r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.p="/touchsocket/",r.gca=function(e){return e={17896441:"7918",41627674:"2894","935f2afb":"53",fce76f89:"138","329302c4":"230","6032078b":"472",ba9c7ecd:"487","28d8f037":"505","223951e7":"631","430053de":"803",d5d2094c:"904","8154dd80":"908",afd686d3:"1270","1c9cad99":"1285","88be757d":"1302","11fc8f46":"1317",eafaca75:"1569","04ff01fb":"1586",a82e3754:"1592",b806365f:"1601","389c2360":"1687",d6be6cb7:"1705",da3959dc:"1793",f05a39b7:"1822","41b30073":"1868","9e2cc891":"1895","17443a98":"1965","763782ab":"1969",b0d79caf:"1971","915634cf":"2022","3030335d":"2289","7c171c7d":"2373","578e6f54":"2375","9a8bd036":"2416","11f9f480":"2671","0fc86718":"2903",e782541c:"2934","0afce4d0":"2996","8c4cc064":"3214",b1f68223:"3285",d22033f9:"3371",b7e03a75:"3503","8973b48c":"3635","078d73b8":"4018",c4f5d8e4:"4195","7a6724ae":"4456",e5d5df95:"4649",b4d3dab5:"4724","91a311b4":"4850","47f1b9ba":"4929",d3845169:"4960","4ecf139e":"5215","9bfb9f12":"5264","355b4941":"5683","95c62853":"5721","19a46420":"5725","3ab343cc":"5873","2c06b999":"5983",d6520aa6:"6050",b992e8b3:"6128","7b93349f":"6171",a81d4448:"6191","320af078":"6373",cbd4f89d:"6390",aa4c723b:"6487","965c04d6":"6505",e7e0ef60:"6746",dfe172e5:"7016","68e3f9c8":"7062","0a7a9b32":"7162","94601e7d":"7278",c8245f17:"7436","94e3a799":"7453","1ec5dc39":"7462",ce02ea51:"7790","1a4e3797":"7920",bcf858d2:"7986","0654e75d":"7987",c8d1f2bf:"8032",df41208d:"8102","177fd31f":"8300",aa2c2bac:"8411","5137840a":"8494",eb7c3b1b:"8610","4c79e569":"8707",a2c90a25:"8719","6bf8fe32":"8808",a46d2111:"8835","4d13c877":"9030","01fa1a8d":"9035","8e1e2f35":"9198",adf44bc8:"9253","53cff02b":"9311","1be78505":"9514","09a85799":"9541",a14859b4:"9660","0b8ef44c":"9750","9106ea79":"9769","13b149a4":"9911","0c2b5d1a":"9925","8e5f0e39":"9954"}[e]||e,r.p+r.u(e)},(()=>{var e={1303:0,532:0};r.f.j=(a,f)=>{var c=r.o(e,a)?e[a]:void 0;if(0!==c)if(c)f.push(c[2]);else if(/^(1303|532)$/.test(a))e[a]=0;else{var b=new Promise(((f,b)=>c=e[a]=[f,b]));f.push(c[2]=b);var d=r.p+r.u(a),t=new Error;r.l(d,(f=>{if(r.o(e,a)&&(0!==(c=e[a])&&(e[a]=void 0),c)){var b=f&&("load"===f.type?"missing":f.type),d=f&&f.target&&f.target.src;t.message="Loading chunk "+a+" failed.\n("+b+": "+d+")",t.name="ChunkLoadError",t.type=b,t.request=d,c[1](t)}}),"chunk-"+a,a)}},r.O.j=a=>0===e[a];var a=(a,f)=>{var c,b,d=f[0],t=f[1],o=f[2],n=0;if(d.some((a=>0!==e[a]))){for(c in t)r.o(t,c)&&(r.m[c]=t[c]);if(o)var i=o(r)}for(a&&a(f);n<d.length;n++)b=d[n],r.o(e,b)&&e[b]&&e[b][0](),e[b]=0;return r.O(i)},f=self.webpackChunktouchsocket=self.webpackChunktouchsocket||[];f.forEach(a.bind(null,0)),f.push=a.bind(null,f.push.bind(f))})()})();
\ No newline at end of file
......@@ -4,7 +4,7 @@
<meta charset="UTF-8">
<meta name="generator" content="Docusaurus v2.2.0">
<title data-rh="true">应用信使 | TouchSocket</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://rrqm_home.gitee.io/touchsocket/docs/appmessenger"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="应用信使 | TouchSocket"><meta data-rh="true" name="description" content="一、说明"><meta data-rh="true" property="og:description" content="一、说明"><link data-rh="true" rel="icon" href="/touchsocket/img/favicon.ico"><link data-rh="true" rel="canonical" href="https://rrqm_home.gitee.io/touchsocket/docs/appmessenger"><link data-rh="true" rel="alternate" href="https://rrqm_home.gitee.io/touchsocket/docs/appmessenger" hreflang="en"><link data-rh="true" rel="alternate" href="https://rrqm_home.gitee.io/touchsocket/docs/appmessenger" hreflang="x-default"><link rel="stylesheet" href="/touchsocket/assets/css/styles.4e3b3a7a.css">
<link rel="preload" href="/touchsocket/assets/js/runtime~main.dab70d56.js" as="script">
<link rel="preload" href="/touchsocket/assets/js/runtime~main.621847f9.js" as="script">
<link rel="preload" href="/touchsocket/assets/js/main.0a8068d8.js" as="script">
</head>
<body class="navigation-with-keyboard">
......@@ -13,7 +13,7 @@
实现IMessage接口,然后增加AppMessage标记的公共方法。</p><div class="language-csharp codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#bfc7d5;--prism-background-color:#292d3e"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-csharp codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#bfc7d5"><span class="token keyword" style="font-style:italic">public</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">class</span><span class="token plain"> </span><span class="token class-name" style="color:rgb(255, 203, 107)">MessageObject</span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">:</span><span class="token plain"> </span><span class="token type-list class-name" style="color:rgb(255, 203, 107)">IMessage</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">[</span><span class="token attribute class-name" style="color:rgb(255, 203, 107)">AppMessage</span><span class="token punctuation" style="color:rgb(199, 146, 234)">]</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain"> </span><span class="token keyword" style="font-style:italic">public</span><span class="token plain"> </span><span class="token return-type class-name keyword" style="color:rgb(255, 203, 107);font-style:italic">int</span><span class="token plain"> </span><span class="token function" style="color:rgb(130, 170, 255)">Add</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token class-name keyword" style="color:rgb(255, 203, 107);font-style:italic">int</span><span class="token plain"> a</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain"> </span><span class="token class-name keyword" style="color:rgb(255, 203, 107);font-style:italic">int</span><span class="token plain"> b</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain"> </span><span class="token keyword" style="font-style:italic">return</span><span class="token plain"> a </span><span class="token operator" style="color:rgb(137, 221, 255)">+</span><span class="token plain"> b</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">[</span><span class="token attribute class-name" style="color:rgb(255, 203, 107)">AppMessage</span><span class="token punctuation" style="color:rgb(199, 146, 234)">]</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain"> </span><span class="token keyword" style="font-style:italic">public</span><span class="token plain"> </span><span class="token return-type class-name keyword" style="color:rgb(255, 203, 107);font-style:italic">int</span><span class="token plain"> </span><span class="token function" style="color:rgb(130, 170, 255)">Sub</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token class-name keyword" style="color:rgb(255, 203, 107);font-style:italic">int</span><span class="token plain"> a</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain"> </span><span class="token class-name keyword" style="color:rgb(255, 203, 107);font-style:italic">int</span><span class="token plain"> b</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain"> </span><span class="token keyword" style="font-style:italic">return</span><span class="token plain"> a </span><span class="token operator" style="color:rgb(137, 221, 255)">-</span><span class="token plain"> b</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token punctuation" style="color:rgb(199, 146, 234)">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block"></span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>【注册】
下列演示时,是新实例化的AppMessenger,实际上,用户可以直接使用AppMessenger.Default默认实例。</p><div class="language-csharp codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#bfc7d5;--prism-background-color:#292d3e"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-csharp codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#bfc7d5"><span class="token class-name" style="color:rgb(255, 203, 107)">AppMessenger</span><span class="token plain"> appMessenger </span><span class="token operator" style="color:rgb(137, 221, 255)">=</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">new</span><span class="token plain"> </span><span class="token constructor-invocation class-name" style="color:rgb(255, 203, 107)">AppMessenger</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain">appMessenger</span><span class="token punctuation" style="color:rgb(199, 146, 234)">.</span><span class="token generic-method function" style="color:rgb(130, 170, 255)">Register</span><span class="token generic-method generic class-name punctuation" style="color:rgb(199, 146, 234)">&lt;</span><span class="token generic-method generic class-name" style="color:rgb(255, 203, 107)">MessageObject</span><span class="token generic-method generic class-name punctuation" style="color:rgb(199, 146, 234)">&gt;</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>【触发】
触发时,泛型类型,即时返回值类型。</p><div class="language-csharp codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#bfc7d5;--prism-background-color:#292d3e"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-csharp codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#bfc7d5"><span class="token class-name keyword" style="color:rgb(255, 203, 107);font-style:italic">int</span><span class="token plain"> </span><span class="token keyword" style="font-style:italic">add</span><span class="token plain"> </span><span class="token operator" style="color:rgb(137, 221, 255)">=</span><span class="token plain"> appMessenger</span><span class="token punctuation" style="color:rgb(199, 146, 234)">.</span><span class="token generic-method function" style="color:rgb(130, 170, 255)">Send</span><span class="token generic-method generic class-name punctuation" style="color:rgb(199, 146, 234)">&lt;</span><span class="token generic-method generic class-name keyword" style="color:rgb(255, 203, 107);font-style:italic">int</span><span class="token generic-method generic class-name punctuation" style="color:rgb(199, 146, 234)">&gt;</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;Add&quot;</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">20</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">10</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain">Assert</span><span class="token punctuation" style="color:rgb(199, 146, 234)">.</span><span class="token function" style="color:rgb(130, 170, 255)">Equal</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token number" style="color:rgb(247, 140, 108)">30</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token keyword" style="font-style:italic">add</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token class-name keyword" style="color:rgb(255, 203, 107);font-style:italic">int</span><span class="token plain"> sub </span><span class="token operator" style="color:rgb(137, 221, 255)">=</span><span class="token plain"> appMessenger</span><span class="token punctuation" style="color:rgb(199, 146, 234)">.</span><span class="token generic-method function" style="color:rgb(130, 170, 255)">Send</span><span class="token generic-method generic class-name punctuation" style="color:rgb(199, 146, 234)">&lt;</span><span class="token generic-method generic class-name keyword" style="color:rgb(255, 203, 107);font-style:italic">int</span><span class="token generic-method generic class-name punctuation" style="color:rgb(199, 146, 234)">&gt;</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token string" style="color:rgb(195, 232, 141)">&quot;Sub&quot;</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">20</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">10</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><span class="token plain"></span><br></span><span class="token-line" style="color:#bfc7d5"><span class="token plain">Assert</span><span class="token punctuation" style="color:rgb(199, 146, 234)">.</span><span class="token function" style="color:rgb(130, 170, 255)">Equal</span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token number" style="color:rgb(247, 140, 108)">10</span><span class="token punctuation" style="color:rgb(199, 146, 234)">,</span><span class="token plain"> sub</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token punctuation" style="color:rgb(199, 146, 234)">;</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div></div><footer class="theme-doc-footer docusaurus-mt-lg"><div class="theme-doc-footer-edit-meta-row row"><div class="col"><a href="https://gitee.com/rrqm_home/touchsocket/tree/master/handbook/docs/appmessenger.mdx" target="_blank" rel="noreferrer noopener" class="theme-edit-this-page"><svg fill="currentColor" height="20" width="20" viewBox="0 0 40 40" class="iconEdit_Z9Sw" aria-hidden="true"><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"></path></g></svg>Edit this page</a></div><div class="col lastUpdated_vwxv"><span class="theme-last-updated">Last updated<!-- --> on <b><time datetime="2023-02-01T05:31:30.000Z">Feb 1, 2023</time></b> by <b>若汝棋茗</b></span></div></div></footer></article><nav class="pagination-nav docusaurus-mt-lg" aria-label="Docs pages navigation"><a class="pagination-nav__link pagination-nav__link--prev" href="/touchsocket/docs/ilog"><div class="pagination-nav__sublabel">Previous</div><div class="pagination-nav__label">日志记录器</div></a><a class="pagination-nav__link pagination-nav__link--next" href="/touchsocket/docs/fastbinaryformatter"><div class="pagination-nav__sublabel">Next</div><div class="pagination-nav__label">高性能序列化</div></a></nav></div></div><div class="col col--3"><div class="tableOfContents_bqdL thin-scrollbar theme-doc-toc-desktop"><ul class="table-of-contents table-of-contents__left-border"><li><a href="#一说明" class="table-of-contents__link toc-highlight">一、说明</a></li><li><a href="#二使用" class="table-of-contents__link toc-highlight">二、使用</a></li></ul></div></div></div></div></main></div></div><footer class="footer footer--dark"><div class="container container-fluid"><div class="row footer__links"><div class="col footer__col"><div class="footer__title">文档</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/touchsocket/docs">入门</a></li><li class="footer__item"><a class="footer__link-item" href="/touchsocket/docs">手册</a></li></ul></div><div class="col footer__col"><div class="footer__title">社区</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://gitee.com/rrqm_home/touchsocket/issues" target="_blank" rel="noopener noreferrer" class="footer__link-item">讨论<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a href="https://gitee.com/rrqm_home/touchsocket/board" target="_blank" rel="noopener noreferrer" class="footer__link-item">看板<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li></ul></div><div class="col footer__col"><div class="footer__title">更多</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://gitee.com/rrqm_home/touchsocket" target="_blank" rel="noopener noreferrer" class="footer__link-item">仓库<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li></ul></div></div><div class="footer__bottom text--center"><div class="footer__copyright">Copyright © 2020-2023 若汝棋茗.</div></div></div></footer></div>
<script src="/touchsocket/assets/js/runtime~main.dab70d56.js"></script>
<script src="/touchsocket/assets/js/runtime~main.621847f9.js"></script>
<script src="/touchsocket/assets/js/main.0a8068d8.js"></script>
</body>
</html>
\ No newline at end of file
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册