Basic Concepts
Basic concepts are the basal skeleton that supports the WD framework.
WD Queue
A WD Queue is a context (session handle) associated with a process and a device. It represents a real device and a commitment of the device to the process. A user program can send a request to the device based on the context.
This concept is used for the entire WD accelerator user-mode library.
Synchronous and Asynchronous
- Synchronous interface
Synchronousness indicates blocking. When the algorithm task is not complete, the invoker is blocked in the interface function until the task is complete and the function returns the result of the algorithm task to the upper-layer user.
- Asynchronous interface
Asynchronousness indicates non-blocking. After a user initiates a task request, the user does not pay attention to the progress of the task and then performs other tasks. The primary difference between asynchronousness and synchronousness whether blocking occurs. In addition, the asynchronous request confirms the corresponding behavior based on the task result. Therefore, after the task is completed, the behavior is implemented by others.