go20/day09/goroutine/arch.drawio

103 lines
8.2 KiB
Plaintext
Raw Normal View History

2026-03-29 16:22:28 +08:00
<mxfile host="65bd71144e">
<diagram id="ntcMOG5Spn2z-IJ_tN7C" name="第 1 页">
<mxGraphModel dx="1134" dy="632" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="0"/>
<mxCell id="1" parent="0"/>
<mxCell id="2" value="" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="110" y="230" width="320" height="320" as="geometry"/>
</mxCell>
<mxCell id="3" value="同步编程" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="230" y="180" width="60" height="30" as="geometry"/>
</mxCell>
<mxCell id="4" value="connection1" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="170" y="250" width="210" height="40" as="geometry"/>
</mxCell>
<mxCell id="5" value="connection2" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="170" y="310" width="210" height="40" as="geometry"/>
</mxCell>
<mxCell id="6" value="&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;connection3&lt;/span&gt;" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="170" y="370" width="210" height="40" as="geometry"/>
</mxCell>
<mxCell id="10" value="" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="510" y="230" width="360" height="320" as="geometry"/>
</mxCell>
<mxCell id="11" value="并行编程" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="650" y="180" width="60" height="30" as="geometry"/>
</mxCell>
<mxCell id="12" value="&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;connection1&lt;/span&gt;" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="540" y="340" width="90" height="40" as="geometry"/>
</mxCell>
<mxCell id="13" value="&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;connection2&lt;/span&gt;" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="650" y="340" width="90" height="40" as="geometry"/>
</mxCell>
<mxCell id="14" value="&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;connection3&lt;/span&gt;" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="750" y="340" width="90" height="40" as="geometry"/>
</mxCell>
<mxCell id="15" value="" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="110" y="700" width="120" height="250" as="geometry"/>
</mxCell>
<mxCell id="16" value="并行执行流&lt;div&gt;connection1&lt;/div&gt;" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="130" y="660" width="80" height="30" as="geometry"/>
</mxCell>
<mxCell id="17" value="" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="320" y="695" width="120" height="250" as="geometry"/>
</mxCell>
<mxCell id="19" value="并行执行流&lt;div&gt;connection2&lt;/div&gt;" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="340" y="655" width="80" height="30" as="geometry"/>
</mxCell>
<mxCell id="20" value="" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="520" y="700" width="120" height="250" as="geometry"/>
</mxCell>
<mxCell id="21" value="并行执行流&lt;div&gt;connection3&lt;/div&gt;" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="540" y="660" width="80" height="30" as="geometry"/>
</mxCell>
<mxCell id="22" value="step 1" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="120" y="730" width="100" height="40" as="geometry"/>
</mxCell>
<mxCell id="23" value="step 2" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="120" y="780" width="100" height="40" as="geometry"/>
</mxCell>
<mxCell id="24" value="step 3" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="120" y="830" width="100" height="40" as="geometry"/>
</mxCell>
<mxCell id="25" value="step 1" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="330" y="725" width="100" height="40" as="geometry"/>
</mxCell>
<mxCell id="26" value="step 2" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="330" y="775" width="100" height="40" as="geometry"/>
</mxCell>
<mxCell id="27" value="step 3" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="330" y="825" width="100" height="40" as="geometry"/>
</mxCell>
<mxCell id="28" value="step 1" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="530" y="730" width="100" height="40" as="geometry"/>
</mxCell>
<mxCell id="29" value="step 2" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="530" y="780" width="100" height="40" as="geometry"/>
</mxCell>
<mxCell id="30" value="step 3" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="530" y="830" width="100" height="40" as="geometry"/>
</mxCell>
2026-03-29 17:54:32 +08:00
<mxCell id="32" value="" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="85" y="1050" width="590" height="190" as="geometry"/>
</mxCell>
<mxCell id="33" value="提供程序执行能力的执行器" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="340" y="1010" width="170" height="30" as="geometry"/>
</mxCell>
<mxCell id="34" value="os process&lt;div&gt;go run main.go&lt;/div&gt;" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="140" y="1115" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="35" value="os thread&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;thread.Run()&lt;/div&gt;" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="310" y="1115" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="36" value="协程序(用户空间 实现的任务调度执行)&lt;div&gt;go func()&lt;/div&gt;" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="470" y="1115" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="37" value="Goroutine 用户态线程" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="680" y="1130" width="130" height="30" as="geometry"/>
</mxCell>
2026-03-29 16:22:28 +08:00
</root>
</mxGraphModel>
</diagram>
</mxfile>