Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Note
This reference is no longer being maintained. For the latest API reference, see WebView2 API Reference.
interface ICoreWebView2SharedWorkerManager
: public IUnknown
This interface manages shared workers in WebView2.
Summary
| Members | Descriptions |
|---|---|
| add_SharedWorkerCreated | Adds an event handler for the SharedWorkerCreated event. |
| GetSharedWorkers | Gets a list of the shared workers created under the same profile. |
| remove_SharedWorkerCreated | Removes an event handler previously added with add_SharedWorkerCreated. |
Applies to
| Product | Introduced |
|---|---|
| WebView2 Win32 | N/A |
| WebView2 Win32 Prerelease |
Members
add_SharedWorkerCreated
Adds an event handler for the SharedWorkerCreated event.
public HRESULT add_SharedWorkerCreated(ICoreWebView2SharedWorkerCreatedEventHandler * eventHandler, EventRegistrationToken * token)
Add an event handler for the SharedWorkerCreated event.
A SharedWorker is a specific type of worker that can be accessed from several browsing contexts, such as multiple windows, iframes, or even other workers. Unlike Dedicated Workers, which have their own separate global scope, SharedWorkers share a common global scope called SharedWorkerGlobalScope.
This event is raised when a web application creates a shared worker using the new SharedWorker("worker.js") method. See the Shared Worker for more information.
CHECK_FAILURE(m_sharedWorkerManager->add_SharedWorkerCreated(
Callback<ICoreWebView2SharedWorkerCreatedEventHandler>(
[this](
ICoreWebView2SharedWorkerManager* sender,
ICoreWebView2SharedWorkerCreatedEventArgs* args)
{
wil::com_ptr<ICoreWebView2SharedWorker> sharedWorker;
CHECK_FAILURE(args->get_Worker(&sharedWorker));
wil::unique_cotaskmem_string scriptUri;
CHECK_FAILURE(sharedWorker->get_ScriptUri(&scriptUri));
std::wstring scriptUriStr(scriptUri.get());
m_appWindow->AsyncMessageBox(scriptUriStr, L"Shared worker is created");
// Subscribe to worker destroying event
sharedWorker->add_Destroying(
Callback<ICoreWebView2SharedWorkerDestroyingEventHandler>(
[this, scriptUriStr](
ICoreWebView2SharedWorker* sender, IUnknown* args) -> HRESULT
{
/*Cleanup on worker destruction*/
m_appWindow->AsyncMessageBox(
scriptUriStr, L"Shared worker is destroyed");
return S_OK;
})
.Get(),
nullptr);
return S_OK;
})
.Get(),
&m_sharedWorkerCreatedToken));
GetSharedWorkers
Gets a list of the shared workers created under the same profile.
public HRESULT GetSharedWorkers(ICoreWebView2GetSharedWorkersCompletedHandler * handler)
remove_SharedWorkerCreated
Removes an event handler previously added with add_SharedWorkerCreated.
public HRESULT remove_SharedWorkerCreated(EventRegistrationToken token)