inside multi-threading
TRANSCRIPT
inside multi-threadingLaurent Esnault, Vice President of Engineering
•-
•-
•
•-
••
•-
••
•-
••
•
•-
••
••
•-
••
•••
•
••
•••
BE PREPARED NOT SCARED
BE PREPARED NOT SCARED
•••
BE PREPARED NOT SCARED
•••
BE PREPARED NOT SCARED
•••
•
••
•••
•••
•••
•
•••
••
BE PREPARED NOT SCARED
•••••
BE PREPARED NOT SCARED
•••••
<>myVar:=<>myVar+1
<>myVar:=<>myVar+1IDLE
IDLE
<>myVar:=<>myVar+1<>myVar:=<>myVar+1<>myVar:=<>myVar+1<>myVar:=<>myVar+1IDLE
IDLE
<>myVar:=<>myVar+1<>myVar:=<>myVar+1<>myVar:=<>myVar+1<>myVar:=<>myVar+1IDLEIDLE IDLE
<>myVar:=<>myVar+1CLEAR SEMAPHORE("myVar")
If(Not(Semaphore("myVar";1000)))
End if
•
••
•••---
myWorker
myWorker
myWorkerCALL WORKER("myWorker";"myMethod";$param)
myWorker
myWorkerCALL WORKER("myWorker";"myMethod";$param)
myWorker
myWorkerCALL WORKER("myWorker";"myMethod";$param)
myWorker
you’ve got mail!
myWorker
myWorker
CALL WORKER("myWorker"; "myMethod";$param)
myWorker
myWorker
CALL WORKER("myWorker"; "myMethod";$param)
myWorker
myWorker
myMethod($param)
CALL WORKER("myWorker"; "myMethod";$param)
myWorker
myWorker
CALL WORKER("myWorker"; "myMethod";$param)
BE PREPARED NOT SCARED
•••••
BE PREPARED NOT SCARED
•••••
•
••
•••---
myWindow
myWindow
myWindowCALL FORM($myWindow;"myMethod";$param)
myWindow
myWindowCALL FORM($myWindow;"myMethod";$param)
myWindow
myWindowCALL FORM($myWindow;"myMethod";$param)
myWindow
you’ve got mail!
myWindowCALL FORM($myWindow; "myMethod";$param)
myWindow
myWindowCALL FORM($myWindow; "myMethod";$param)
myWindow
myWindowCALL FORM($myWindow; "myMethod";$param)
myWindow
myMethod($param)
myWindowCALL FORM($myWindow; "myMethod";$param)
myWindow
Windows
Mac
v12
Windows
Mac
v12
Windows
Mac
v13
OD BC
v12
Windows
Mac
v13
OD BC
v15
OD BC
v12 v15 Rx
Windows
Mac
v13
OD BC
v15
OD BC
v12 v15 Rx v15 R5
Windows
Mac
v13
OD BC
v15
OD BC
v12 v15 Rx v15 R5 v16
Windows
Mac
v13
OD BC
v15
OD BC
•
•
•
•
•
•