[webkit-changes] [WebKit/WebKit] 3ece00: Add process info methods to WKProcessPool
bnham
noreply at github.com
Wed Feb 14 19:22:46 PST 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 3ece00bd2a4f6159b2e91705cde25e993edbb220
https://github.com/WebKit/WebKit/commit/3ece00bd2a4f6159b2e91705cde25e993edbb220
Author: Ben Nham <nham at apple.com>
Date: 2024-02-14 (Wed, 14 Feb 2024)
Changed paths:
M Source/WebKit/UIProcess/API/Cocoa/WKProcessPool.mm
M Source/WebKit/UIProcess/API/Cocoa/WKProcessPoolPrivate.h
M Source/WebKit/UIProcess/AuxiliaryProcessProxy.h
M Source/WebKit/UIProcess/Cocoa/AuxiliaryProcessProxyCocoa.mm
M Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm
M Source/WebKit/UIProcess/GPU/GPUProcessProxy.h
M Source/WebKit/UIProcess/Model/ModelProcessProxy.h
M Source/WebKit/UIProcess/Network/NetworkProcessProxy.h
M Source/WebKit/UIProcess/WebProcessProxy.cpp
M Source/WebKit/UIProcess/WebProcessProxy.h
M Tools/TestWebKitAPI/SourcesCocoa.txt
M Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj
A Tools/TestWebKitAPI/Tests/WebKitCocoa/ProcessInfo.mm
Log Message:
-----------
Add process info methods to WKProcessPool
https://bugs.webkit.org/show_bug.cgi?id=269228
rdar://problem/122825184
Reviewed by Brady Eidson.
This adds methods to WKProcessPool that allow clients to see metadata such as CPU time usage, memory
footprint, and current process state for processes spawned by WebKit. This can be useful for
understanding how our processes behave in the field.
* Source/WebKit/UIProcess/API/Cocoa/WKProcessPool.mm:
(+[WKProcessPool _gpuProcessInfo]):
(+[WKProcessPool _networkingProcessInfo]):
(+[WKProcessPool _webContentProcessInfo]):
(processStateFromThrottleState):
(-[_WKProcessInfo initWithTaskInfo:]):
(-[_WKWebContentProcessInfo initWithTaskInfo:process:]):
(-[_WKWebContentProcessInfo webViews]):
* Source/WebKit/UIProcess/API/Cocoa/WKProcessPoolPrivate.h:
* Source/WebKit/UIProcess/AuxiliaryProcessProxy.h:
* Source/WebKit/UIProcess/Cocoa/AuxiliaryProcessProxyCocoa.mm:
(WebKit::AuxiliaryProcessProxy::taskInfo const):
* Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::description):
(WebKit::logProcessPoolState):
* Source/WebKit/UIProcess/GPU/GPUProcessProxy.h:
* Source/WebKit/UIProcess/Model/ModelProcessProxy.h:
* Source/WebKit/UIProcess/Network/NetworkProcessProxy.h:
* Source/WebKit/UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::setIsInProcessCache):
(WebKit::WebProcessProxy::markIsNoLongerInPrewarmedPool):
(WebKit::WebProcessProxy::didChangeThrottleState):
(WebKit::WebProcessProxy::didDropLastAssertion):
(WebKit::WebProcessProxy::totalForegroundTime const):
(WebKit::WebProcessProxy::totalBackgroundTime const):
(WebKit::WebProcessProxy::totalSuspendedTime const):
(WebKit::WebProcessProxy::updateRuntimeStatistics):
* Source/WebKit/UIProcess/WebProcessProxy.h:
(WebKit::WebProcessProxy::throttler const): Deleted.
Canonical link: https://commits.webkit.org/274692@main
More information about the webkit-changes
mailing list