Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3ece00bd2a4f6159b2e91705cde25e993edbb220
      
https://github.com/WebKit/WebKit/commit/3ece00bd2a4f6159b2e91705cde25e993edbb220
  Author: Ben Nham <[email protected]>
  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


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to