This commit is contained in:
chai2010
2015-12-28 16:08:26 +08:00
parent 35b11c0ff4
commit 775502e64d
206 changed files with 2064 additions and 1460 deletions

View File

@@ -21,6 +21,10 @@
<link rel="stylesheet" href="../gitbook/style.css">
<link rel="stylesheet" href="../gitbook/plugins/gitbook-plugin-katex/katex.min.css">
<link rel="stylesheet" href="../gitbook/plugins/gitbook-plugin-highlight/website.css">
@@ -44,7 +48,7 @@
<body>
<div class="book" data-level="8" data-chapter-title="Goroutines和Channels" data-filepath="ch8/ch8.md" data-basepath=".." data-revision="Fri Dec 25 2015 12:32:44 GMT+0800 (中国标准时间)">
<div class="book" data-level="8" data-chapter-title="Goroutines和Channels" data-filepath="ch8/ch8.md" data-basepath=".." data-revision="Mon Dec 28 2015 16:03:52 GMT+0800 (中国标准时间)">
<div class="book-summary">
@@ -238,7 +242,7 @@
<b>1.5.</b>
取URL
取URL
</a>
@@ -253,7 +257,7 @@
<b>1.6.</b>
併發取多個URL
併發取多個URL
</a>
@@ -802,7 +806,7 @@
<b>5.10.</b>
Recover捕異常
Recover捕異常
</a>
@@ -1315,7 +1319,7 @@
<b>8.9.</b>
併發的退
併發的退
</a>
@@ -1834,7 +1838,7 @@
<b>12.7.</b>
取結構體字段標識
取結構體字段標識
</a>
@@ -2020,7 +2024,7 @@
<section class="normal" id="section-">
<h1 id="&#x7B2C;&#x516B;&#x7AE0;-goroutines&#x548C;channels">&#x7B2C;&#x516B;&#x7AE0; Goroutines&#x548C;Channels</h1>
<p>&#x4F75;&#x767C;&#x7A0B;&#x5E8F;&#x6307;&#x7684;&#x662F;&#x540C;&#x6642;&#x505A;&#x597D;&#x5E7E;&#x4EF6;&#x4E8B;&#x60C5;&#x7684;&#x7A0B;&#x5E8F;&#xFF0C;&#x96A8;&#x7740;&#x786C;&#x4EF6;&#x7684;&#x767C;&#x5C55;&#xFF0C;&#x4F75;&#x767C;&#x7A0B;&#x5E8F;&#x986F;&#x5F97;&#x8D8A;&#x4F86;&#x8D8A;&#x91CD;&#x8981;&#x3002;Web&#x670D;&#x52D9;&#x5668;&#x6703;&#x4E00;&#x6B21;&#x8655;&#x7406;&#x6210;&#x97C6;&#x4E0A;&#x842C;&#x7684;&#x8ACB;&#x6C42;&#x3002;&#x5E73;&#x95C6;&#x96FB;&#x8166;&#x548C;&#x624B;&#x6A5F;app&#x5728;&#x6E32;&#x67D3;&#x7528;&#x6236;&#x52D5;&#x7575;&#x7684;&#x540C;&#x6642;&#xFF0C;&#x9084;&#x6703;&#x5F8C;&#x98B1;&#x57F7;&#x884C;&#x5404;&#x7A2E;&#x8A08;&#x7B97;&#x4EFB;&#x52D9;&#x548C;&#x7DB2;&#x7D61;&#x8ACB;&#x6C42;&#x3002;&#x537D;&#x4F7F;&#x662F;&#x50B3;&#x7D71;&#x7684;&#x6279;&#x8655;&#x7406;&#x554F;&#x984C;--&#x8B80;&#x53D6;&#x6578;&#x64DA;&#xFF0C;&#x8A08;&#x7B97;&#xFF0C;&#x5BEB;&#x8F38;&#x9F63;--&#x73FE;&#x5728;&#x4E5F;&#x6703;&#x7528;&#x4F75;&#x767C;&#x4F86;&#x96B1;&#x85CF;&#x6389;I/O&#x7684;&#x64CD;&#x4F5C;&#x5EF6;&#x9072;&#x5145;&#x5206;&#x5229;&#x7528;&#x73FE;&#x4EE3;&#x8A08;&#x7B97;&#x6A5F;&#x8A2D;&#x5099;&#x7684;&#x591A;&#x8988;&#xFF0C;&#x76E1;&#x7BA1;&#x8A08;&#x7B97;&#x6A5F;&#x7684;&#x6027;&#x80FD;&#x6BCF;&#x5E74;&#x90FD;&#x5728;&#x589E;&#x9577;&#xFF0C;&#x4F46;&#x4F75;&#x4E0D;&#x662F;&#x7DDA;&#x6027;&#x3002;</p>
<p>&#x4F75;&#x767C;&#x7A0B;&#x5E8F;&#x6307;&#x7684;&#x662F;&#x540C;&#x6642;&#x505A;&#x597D;&#x5E7E;&#x4EF6;&#x4E8B;&#x60C5;&#x7684;&#x7A0B;&#x5E8F;&#xFF0C;&#x96A8;&#x7740;&#x786C;&#x4EF6;&#x7684;&#x767C;&#x5C55;&#xFF0C;&#x4F75;&#x767C;&#x7A0B;&#x5E8F;&#x986F;&#x5F97;&#x8D8A;&#x4F86;&#x8D8A;&#x91CD;&#x8981;&#x3002;Web&#x670D;&#x52D9;&#x5668;&#x6703;&#x4E00;&#x6B21;&#x8655;&#x7406;&#x6210;&#x97C6;&#x4E0A;&#x842C;&#x7684;&#x8ACB;&#x6C42;&#x3002;&#x5E73;&#x95C6;&#x96FB;&#x8166;&#x548C;&#x624B;&#x6A5F;app&#x5728;&#x6E32;&#x67D3;&#x7528;&#x6236;&#x52D5;&#x7575;&#x7684;&#x540C;&#x6642;&#xFF0C;&#x9084;&#x6703;&#x5F8C;&#x53F0;&#x57F7;&#x884C;&#x5404;&#x7A2E;&#x8A08;&#x7B97;&#x4EFB;&#x52D9;&#x548C;&#x7DB2;&#x7D61;&#x8ACB;&#x6C42;&#x3002;&#x537D;&#x4F7F;&#x662F;&#x50B3;&#x7D71;&#x7684;&#x6279;&#x8655;&#x7406;&#x554F;&#x984C;--&#x8B80;&#x53D6;&#x6578;&#x64DA;&#xFF0C;&#x8A08;&#x7B97;&#xFF0C;&#x5BEB;&#x8F38;&#x51FA;--&#x73FE;&#x5728;&#x4E5F;&#x6703;&#x7528;&#x4F75;&#x767C;&#x4F86;&#x96B1;&#x85CF;&#x6389;I/O&#x7684;&#x64CD;&#x4F5C;&#x5EF6;&#x9072;&#x5145;&#x5206;&#x5229;&#x7528;&#x73FE;&#x4EE3;&#x8A08;&#x7B97;&#x6A5F;&#x8A2D;&#x5099;&#x7684;&#x591A;&#x8988;&#xFF0C;&#x76E1;&#x7BA1;&#x8A08;&#x7B97;&#x6A5F;&#x7684;&#x6027;&#x80FD;&#x6BCF;&#x5E74;&#x90FD;&#x5728;&#x589E;&#x9577;&#xFF0C;&#x4F46;&#x4F75;&#x4E0D;&#x662F;&#x7DDA;&#x6027;&#x3002;</p>
<p>Go&#x8A9E;&#x8A00;&#x4E2D;&#x7684;&#x4F75;&#x767C;&#x7A0B;&#x5E8F;&#x53EF;&#x4EE5;&#x7528;&#x5169;&#x7A2E;&#x624B;&#x6BB5;&#x4F86;&#x5BE6;&#x73FE;&#x3002;&#x9019;&#x4E00;&#x7AE0;&#x6703;&#x8B1B;&#x89E3;goroutine&#x548C;channel&#xFF0C;&#x5176;&#x652F;&#x6301;&#x201C;&#x9806;&#x5E8F;&#x9032;&#x7A0B;&#x901A;&#x4FE1;&#x201D;(communicating sequential processes)&#x6216;&#x88AB;&#x7C21;&#x7A31;&#x7232;CSP&#x3002;CSP&#x662F;&#x4E00;&#x500B;&#x73FE;&#x4EE3;&#x7684;&#x4F75;&#x767C;&#x7DE8;&#x7A0B;&#x6A21;&#x578B;&#xFF0C;&#x5728;&#x9019;&#x7A2E;&#x7DE8;&#x7A0B;&#x6A21;&#x578B;&#x4E2D;&#x503C;&#x6703;&#x5728;&#x4E0D;&#x540C;&#x7684;&#x904B;&#x884C;&#x5BE6;&#x4F8B;(goroutine)&#x4E2D;&#x50B3;&#x905E;&#xFF0C;&#x76E1;&#x7BA1;&#x5927;&#x591A;&#x6578;&#x60C5;&#x6CC1;&#x4E0B;&#x88AB;&#x9650;&#x88FD;&#x5728;&#x55AE;&#x4E00;&#x5BE6;&#x4F8B;&#x4E2D;&#x3002;&#x7B2C;9&#x7AE0;&#x6703;&#x8986;&#x84CB;&#x5230;&#x66F4;&#x7232;&#x50B3;&#x7D71;&#x7684;&#x4F75;&#x767C;&#x6A21;&#x578B;&#xFF1A;&#x591A;&#x7DDA;&#x7A0B;&#x5171;&#x4EAB;&#x5167;&#x5B58;&#xFF0C;&#x5982;&#x679C;&#x4F60;&#x5728;&#x5176;&#x5B83;&#x7684;&#x4E3B;&#x6D41;&#x8A9E;&#x8A00;&#x4E2D;&#x5BEB;&#x904E;&#x4F75;&#x767C;&#x7A0B;&#x5E8F;&#x7684;&#x8A71;&#x53EF;&#x80FD;&#x6703;&#x66F4;&#x719F;&#x6089;&#x4E00;&#x4E9B;&#x3002;&#x7B2C;9&#x7AE0;&#x540C;&#x6642;&#x6703;&#x8B1B;&#x4E00;&#x4E9B;&#x672C;&#x7AE0;&#x4E0D;&#x6703;&#x6DF1;&#x5165;&#x7684;&#x4F75;&#x767C;&#x7A0B;&#x5E8F;&#x5E36;&#x4F86;&#x7684;&#x91CD;&#x8981;&#x98A8;&#x96AA;&#x548C;&#x9677;&#x9631;&#x3002;</p>
<p>&#x76E1;&#x7BA1;Go&#x5C0D;&#x4F75;&#x767C;&#x7684;&#x652F;&#x6301;&#x662F;&#x8846;&#x591A;&#x5F37;&#x529B;&#x7279;&#x6027;&#x4E4B;&#x4E00;&#xFF0C;&#x4F46;&#x5927;&#x591A;&#x6578;&#x60C5;&#x6CC1;&#x4E0B;&#x8DDF;&#x8E64;&#x4F75;&#x767C;&#x7A0B;&#x5E8F;&#x9084;&#x662F;&#x5F88;&#x774F;&#x96E3;&#xFF0C;&#x4F75;&#x4E14;&#x5728;&#x7DDA;&#x6027;&#x7A0B;&#x5E8F;&#x4E2D;&#x6211;&#x5011;&#x7684;&#x76F4;&#x89BA;&#x5F80;&#x5F80;&#x9084;&#x6703;&#x8B93;&#x6211;&#x5011;&#x8AA4;&#x5165;&#x6B67;&#x9014;&#x3002;&#x5982;&#x679C;&#x9019;&#x662F;&#x4F60;&#x7B2C;&#x4E00;&#x6B21;&#x63A5;&#x89F8;&#x4F75;&#x767C;&#xFF0C;&#x90A3;&#x9EBD;&#x6211;&#x63A8;&#x85A6;&#x4F60;&#x7A0D;&#x5FAE;&#x591A;&#x82B1;&#x4E00;&#x4E9B;&#x6642;&#x9593;&#x4F86;&#x601D;&#x8003;&#x9019;&#x5169;&#x500B;&#x7AE0;&#x7BC0;&#x4E2D;&#x7684;&#x6A23;&#x4F8B;&#x3002;</p>
@@ -2054,7 +2058,7 @@
<script>
require(["gitbook"], function(gitbook) {
var config = {"highlight":{},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2}};
var config = {"katex":{},"highlight":{},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2}};
gitbook.start(config);
});
</script>