Parallel Programming with OmniThreadLibrary Primož Gabrijelčič Primož Gabrijelčič programmer, consultant, speaker, trainer Delphi / Smart Mobile Studio Email: [email protected] Twitter: @thedelphigeek Skype: gabr42 The Delphi Geek –
Download ReportTranscript Parallel Programming with OmniThreadLibrary Primož Gabrijelčič Primož Gabrijelčič programmer, consultant, speaker, trainer Delphi / Smart Mobile Studio Email: [email protected] Twitter: @thedelphigeek Skype: gabr42 The Delphi Geek –
Slide 1
Parallel Programming with OmniThreadLibrary
Primož Gabrijelčič
Slide 2
Primož Gabrijelčič
programmer, consultant, speaker, trainer
Delphi / Smart Mobile Studio
Email: [email protected]
Twitter: @thedelphigeek
Skype: gabr42
The Delphi Geek – http://www.thedelphigeek.com
Smart Programmer – http://www.smartprogrammer.org
Slide 3
Slide 4
What is OmniThreadLibrary?
Slide 5
OmniThreadLibrary is …
•
•
•
•
•
… VCL for multithreading
… released under an open license
… actively developed
… frequently used
… available in Delphis from 2007 to XE3
– Windows 32- or 64-bit, VCL only
Slide 6
How do I learn more?
Slide 7
OmniThreadLibrary on the web
•
•
•
•
•
Home: otl.17slon.com
Code: omnithreadlibrary.googlecode.com
Book: leanpub.com/omnithreadlibrary
Wiki: otl.17slon.com/book
Support: otl.17slon.com/forum
Slide 8
How do I execute long operation in background
and run some code in the main thread after the
long operation has finished?
Slide 9
Async/Await
Initialization
Long operation
Cleanup
Slide 10
How do I run long calculation in background and
process the result in the main thread?
Slide 11
Future
Long calculation
Use result
Slide 12
How do I run same background operation in
multiple simultaneous copies processing an
input?
Slide 13
Background Worker
Data
Process
Process
Process
Process
Process
Result
Slide 14
How do I parallelize a process that executes in
multiple stages?
Slide 15
Pipeline
Data
Stage 1
Stage 2
Stage 3
Stage 4
Result
Slide 16
How do I work with databases in multithreaded
environment?
Slide 17
Databases
GUI
Frame
Frame
Database Access
Slide 18
Questions?
Parallel Programming with OmniThreadLibrary
Primož Gabrijelčič
Slide 2
Primož Gabrijelčič
programmer, consultant, speaker, trainer
Delphi / Smart Mobile Studio
Email: [email protected]
Twitter: @thedelphigeek
Skype: gabr42
The Delphi Geek – http://www.thedelphigeek.com
Smart Programmer – http://www.smartprogrammer.org
Slide 3
Slide 4
What is OmniThreadLibrary?
Slide 5
OmniThreadLibrary is …
•
•
•
•
•
… VCL for multithreading
… released under an open license
… actively developed
… frequently used
… available in Delphis from 2007 to XE3
– Windows 32- or 64-bit, VCL only
Slide 6
How do I learn more?
Slide 7
OmniThreadLibrary on the web
•
•
•
•
•
Home: otl.17slon.com
Code: omnithreadlibrary.googlecode.com
Book: leanpub.com/omnithreadlibrary
Wiki: otl.17slon.com/book
Support: otl.17slon.com/forum
Slide 8
How do I execute long operation in background
and run some code in the main thread after the
long operation has finished?
Slide 9
Async/Await
Initialization
Long operation
Cleanup
Slide 10
How do I run long calculation in background and
process the result in the main thread?
Slide 11
Future
Long calculation
Use result
Slide 12
How do I run same background operation in
multiple simultaneous copies processing an
input?
Slide 13
Background Worker
Data
Process
Process
Process
Process
Process
Result
Slide 14
How do I parallelize a process that executes in
multiple stages?
Slide 15
Pipeline
Data
Stage 1
Stage 2
Stage 3
Stage 4
Result
Slide 16
How do I work with databases in multithreaded
environment?
Slide 17
Databases
GUI
Frame
Frame
Database Access
Slide 18
Questions?