Application not responding
Collector for macOS records application not responding events from devices in much the same way as Collector for Windows. Applications that do not respond to user input have a negative impact on the overall experience of employees and thus are an important part of the Digital Experience Score (DEX). Refer to DEX score documentation for more information.
The technique employed by Collector to determine whether an application is not responding on macOS differs from the method used on Windows. This article describes how Collector measures an application not responding to events on each platform.
Application not responding on Windows
On Windows, Collector regularly checks the responsiveness of applications by sending messages to their open windows. When an application does not process these messages timely, the system creates a new application not responding event.
To detect unresponsive applications on Windows, the Nexthink Collector relies on the Windows API IsHungAppWindow. According to Microsoft documentation, an application is considered not responsive when:
It is not waiting for input.
It is not performing startup processing.
Has not called the
PeekMessagefunction within an internal 5-second timeout period.
The Collector samples this API every 30 seconds and reports an application freeze only when the application fails to check for new user input within the 5-second window. This approach allows Nexthink to identify applications that do not respond promptly to user interactions.
Application freezes can have multiple causes, such as excessive processing on the main UI thread. Unlike application logs, which rely on developer instrumentation, this detection mechanism works independently of application logging. Application logs usually capture only severe failures. This approach consistently identifies both complete freezes and short periods of unresponsiveness, even when the application continues to run but responds slowly.
Application not responding on macOS
On macOS, Collector relies on the operating system logs to know whether an application is not responding. However, macOS reports unresponsiveness only after the user has forcefully quit an application.
For example, if an application is not responsive at some point, but eventually recovers, Collector does not report the application as not responding as long as the employee did not force the application to quit.
Last updated
Was this helpful?