Writing Multithreaded CVL Applications
CVL enables you to write a multithreaded application. This chapter contains information you need to know to write multithreaded applications using the Cognex Vision Library (CVL).
Using Threads with CVL discusses reasons to use multithreading in a CVL application and recommends using the CVL threads API.
Calling MFC Functions from Non-MFC Threads discusses changes in the behavior of non-MFC threads in Microsoft Visual C++ .NET. Be sure to read this section if you are porting your application to Visual C++ .NET.
CVL’s Threading Interface describes the functions and classes in CVL’s threading interface.
Thread Creation discusses creating threads and avoiding common problems.
Thread Cleanup discusses ensuring that memory that CVL allocates internally per thread is cleaned up when the thread exits.
CVL Objects Require Apartment Threading discusses the fact that CVL classes are not inherently thread safe, and that access to resources by multiple threads must be synchronized.
Thread Synchronization Objects discusses the mutex, semaphore, and event objects available in CVL for synchronizing threads.
Requirements and Recommendations provides some guidance in the proper use of threads in a CVL application.
Multi-Core and Multi-Processor Systems provides information on how to write your CVL application to take advantage of the capabilities of multi-core and multi-processor systems.
Multiprocess Applications discusses a subject related to multithreading, the use of multiple processes in your vision processing application.