Class ov::threading::ExecutableNetworkThreadSafeDefault¶
-
class ExecutableNetworkThreadSafeDefault : public IExecutableNetworkInternal¶
This class provides optimal thread safe default implementation. The class is recommended to be used as a base class for Executable Network implementation during plugin development.
Public Types
-
typedef std::shared_ptr<ExecutableNetworkThreadSafeDefault> Ptr¶
A shared pointer to a ExecutableNetworkThreadSafeDefault object.
Public Functions
-
inline explicit ExecutableNetworkThreadSafeDefault(const ITaskExecutor::Ptr &taskExecutor = std::make_shared<CPUStreamsExecutor>(IStreamsExecutor::Config{"Default"}), const ITaskExecutor::Ptr &callbackExecutor = std::make_shared<CPUStreamsExecutor>(IStreamsExecutor::Config{"Callback"}))¶
Constructs a new instance.
- Parameters
taskExecutor – [in] The task executor used
callbackExecutor – [in] The callback executor
-
inline IInferRequestInternal::Ptr CreateInferRequest() override¶
Given optional implementation of creating asynchronous inference request to avoid need for it to be implemented by plugin.
- Returns
shared_ptr for the created asynchronous inference request
-
typedef std::shared_ptr<ExecutableNetworkThreadSafeDefault> Ptr¶