228:
97:
are designed to minimize the over-all effect of blocking. A process that blocks may prevent local work-tasks from progressing. In this case "blocking" often is seen as not wanted. However, such work-tasks may instead have been assigned to independent processes, where halting one has little to no
87:
are used to prevent this concurrent use. When the other task is blocked, it is unable to execute until the first task has finished using the shared resource.
269:
189:
83:
When one task is using a resource, it is generally not possible, or desirable, for another task to access it. The techniques of
293:
116:
means that processes pathologically wait for each other in a circle. As such it is not directly associated with blocking.
262:
174:
110:) is part of the semantics of channels. Correctly engineered, any of these may be used to implement reactive systems.
308:
303:
288:
255:
113:
50:. Once the event occurs for which the process is waiting ("is blocked on"), the process is advanced from
43:
103:
145:
135:
243:
298:
99:
65:
125:
94:
90:
8:
205:
140:
73:
31:
170:
51:
39:
235:
98:
effect on the others, since scheduling will continue. An example is "blocking on a
84:
69:
58:
130:
77:
239:
282:
227:
54:
47:
20:
107:
211:
27:
201:
80:
include: the CPU, network and network interfaces, memory and disk.
102:" where passively waiting for the other part (i.e. no
190:C++ and Beyond 2012: Herb Sutter - C++ Concurrency
167:Operating Systems: Internals and Design Principles
19:For the memory-access optimization technique, see
280:
263:
46:becoming available or the completion of an
270:
256:
76:, must share the resources of the system.
164:
281:
222:
13:
14:
320:
226:
169:(5th ed.). Prentice Hall.
194:
183:
158:
1:
151:
16:State for a computing process
242:. You can help Knowledge by
214:2012. Google for Developers.
68:computer system, individual
57:to an imminent one, such as
7:
294:Inter-process communication
165:Stallings, William (2004).
119:
10:
325:
221:
18:
207:Go Concurrency Patterns
309:Operating system stubs
304:Scheduling (computing)
238:-related article is a
146:Scheduling (computing)
136:Non-blocking algorithm
289:Computing terminology
95:scheduling algorithms
91:Programming languages
126:Concurrent computing
74:threads of execution
38:is waiting for some
251:
250:
316:
272:
265:
258:
236:operating-system
230:
223:
216:
215:
198:
192:
187:
181:
180:
162:
85:mutual exclusion
78:Shared resources
324:
323:
319:
318:
317:
315:
314:
313:
279:
278:
277:
276:
220:
219:
200:
199:
195:
188:
184:
177:
163:
159:
154:
131:Data dependency
122:
24:
17:
12:
11:
5:
322:
312:
311:
306:
301:
296:
291:
275:
274:
267:
260:
252:
249:
248:
231:
218:
217:
204:(2012-07-02).
193:
182:
176:978-0131479548
175:
156:
155:
153:
150:
149:
148:
143:
141:Race condition
138:
133:
128:
121:
118:
15:
9:
6:
4:
3:
2:
321:
310:
307:
305:
302:
300:
297:
295:
292:
290:
287:
286:
284:
273:
268:
266:
261:
259:
254:
253:
247:
245:
241:
237:
232:
229:
225:
224:
213:
209:
208:
203:
197:
191:
186:
178:
172:
168:
161:
157:
147:
144:
142:
139:
137:
134:
132:
129:
127:
124:
123:
117:
115:
111:
109:
105:
101:
96:
92:
88:
86:
81:
79:
75:
71:
67:
62:
60:
56:
53:
49:
48:I/O operation
45:
41:
37:
33:
29:
22:
21:loop blocking
299:Input/output
244:expanding it
233:
206:
196:
185:
166:
160:
112:
89:
82:
66:multitasking
63:
42:, such as a
35:
25:
283:Categories
212:Google I/O
152:References
108:spin loop
28:computing
202:Rob Pike
120:See also
114:Deadlock
59:runnable
44:resource
34:that is
104:polling
100:channel
52:blocked
36:blocked
32:process
173:
234:This
72:, or
70:tasks
64:In a
55:state
40:event
240:stub
171:ISBN
93:and
30:, a
106:or
26:In
285::
210:.
61:.
271:e
264:t
257:v
246:.
179:.
23:.
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.