-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy paththreadpool.drawio
More file actions
42 lines (42 loc) · 3.57 KB
/
threadpool.drawio
File metadata and controls
42 lines (42 loc) · 3.57 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<mxfile host="Electron" agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/26.0.9 Chrome/128.0.6613.186 Electron/32.2.5 Safari/537.36" version="26.0.9">
<diagram name="Page-1" id="A2KzF6zvE9TMMP_vtKxd">
<mxGraphModel dx="2074" dy="793" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="uFgI0zCPGxUAruyYwe1g-9" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;" parent="1" source="mkb6wdCKDETYSr460KwH-1" target="uFgI0zCPGxUAruyYwe1g-8" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="uFgI0zCPGxUAruyYwe1g-11" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;" parent="1" source="mkb6wdCKDETYSr460KwH-1" target="uFgI0zCPGxUAruyYwe1g-1" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="mkb6wdCKDETYSr460KwH-1" value="<font style="font-size: 20px;">Constructor</font>" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="210" y="90" width="240" height="60" as="geometry" />
</mxCell>
<mxCell id="uFgI0zCPGxUAruyYwe1g-1" value="Queue of threads, each thread in queue is a wrapper around user submitted function. Waits until queue is not empty. Takes off from queue and starts running&nbsp;" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="390" y="300" width="330" height="80" as="geometry" />
</mxCell>
<mxCell id="fPUQlFL9-MaLJsnOUjzg-1" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;" edge="1" parent="1" source="uFgI0zCPGxUAruyYwe1g-8" target="uFgI0zCPGxUAruyYwe1g-1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="uFgI0zCPGxUAruyYwe1g-8" value="Queue of tasks (two times queue of threads)" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="-70" y="300" width="330" height="80" as="geometry" />
</mxCell>
<mxCell id="uFgI0zCPGxUAruyYwe1g-16" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;" parent="1" source="uFgI0zCPGxUAruyYwe1g-15" target="uFgI0zCPGxUAruyYwe1g-8" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="uFgI0zCPGxUAruyYwe1g-17" value="<font style="font-size: 20px;">Push task (arbitrary function)</font>" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="uFgI0zCPGxUAruyYwe1g-16" vertex="1" connectable="0">
<mxGeometry x="-0.1118" y="-1" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="uFgI0zCPGxUAruyYwe1g-15" value="User" style="shape=actor;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="-10" y="550" width="40" height="60" as="geometry" />
</mxCell>
<mxCell id="uFgI0zCPGxUAruyYwe1g-18" value="Push waits if load is two times number of threads" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" parent="1" vertex="1">
<mxGeometry x="-280" y="500" width="280" height="30" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>