HOME


Mini Shell 1.0
Redirecting to https://devs.lapieza.net/iniciar-sesion Redirecting to https://devs.lapieza.net/iniciar-sesion.
DIR: /proc/self/root/usr/lib/python3.11/test/libregrtest/__pycache__/
Upload File :
Current File : //proc/self/root/usr/lib/python3.11/test/libregrtest/__pycache__/win_utils.cpython-311.pyc
�

*�Kg����ddlZddlZddlZddlZddlZddlZdZdejedz��zZdZ	Gd�d��Z
dS)�N��<�c��eZdZdZd�Zejejfd�Z	e
je
je
jfd�Zd
d�Zejejejfd�Zd�Zd	S)�WindowsLoadTrackerz�
    This class asynchronously reads the performance counters to calculate
    the system load on Windows.  A "raw" thread is used here to prevent
    interference with the test suite's cases for the threading module.
    c��tjtj��g|_d|_tjdddd��|_tjdddd��|_tj
|jdi��dS)NTF�)�winreg�QueryInfoKey�HKEY_PERFORMANCE_DATA�_values�_load�_overlapped�CreateEvent�_running�_stopped�_thread�start_new_thread�_update_load��selfs �1/usr/lib/python3.11/test/libregrtest/win_utils.py�__init__zWindowsLoadTracker.__init__st��	��F�8�9�9�9������
�#�/��d�E�4�H�H��
�#�/��d�E�4�H�H��
�� ��!2�B��;�;�;�;�;�c��||jd��r%|���||jd���%||j��dS)Ni�)r�_calculate_loadr)r�_wait�_signals   rrzWindowsLoadTracker._update_load&s^��
�e�D�M�4�(�(�	#�� � �"�"�"��e�D�M�4�(�(�	#�	���
�����rc��||d��\}}|d|d��\}|d||��\}}||z}	||z}
|
|	kr7|d||
��\}}}
|
|z
}
|dkr|	|
z}|d||��\}n|
|	k�7dS|j�$|jtz|dtz
zz|_dSt|j��tkr|j�|��dSt
|j��t|j��z|_dS)N�2�L��4xLL�LL28xL�,g�?)r�
LOAD_FACTOR_1�lenr
�NVALUE�append�sum)r�_query�_hkey�_unpack�data�_�	obj_start�
data_start�
defn_start�	data_base�	defn_base�size�idx�offset�counter_offset�processor_queue_lengths                rrz"WindowsLoadTracker._calculate_load0sU���&���$�$���a��W�S�$��+�+�
�	�")����y�!A�!A��
�J��
�*�	��
�*�	��)�#�#�!(���$�	� B� B��D�#�v����I��b�y�y�!*�V�!3��*1�'�#�t�^�*L�*L�'�&���)�#�#�
�F��:�!��*�}�4�4��}�9L�M�N�D�J�J�J�
���
�
��
'�
'��L��� 6�7�7�7�7�7��T�\�*�*�S���->�->�>�D�J�J�JrTc�.�|���dS�N)�__del__)r�kills  r�closezWindowsLoadTracker.closehs���������rc��|j�Q||j��||jd��||j��||j��dx|_|_dSdS)N���)rr)rr�_closers    rr<zWindowsLoadTracker.__del__lsp��
�=�$��G�D�M�"�"�"��E�$�-��$�$�$��F�4�=�!�!�!��F�4�=�!�!�!�,0�0�D�M�D�M�M�M�%�$rc��|jSr;)rrs r�
getloadavgzWindowsLoadTracker.getloadavg{s
���z�rN)T)�__name__�
__module__�__qualname__�__doc__r�_winapi�WaitForSingleObjectr�SetEventrr
�QueryValueExr�struct�unpack_fromrr>�CloseHandler<rCr	rrrrs���������
<�
<�
<�#�6�(�1����� &�2�$�:� &� 2�	6?�6?�6?�6?�p�����1��*�#�,�	
1�
1�
1�
1�����rr)rrrH�mathrLr
�SAMPLING_INTERVAL�expr&r(rr	rr�<module>rRs�������������������
�
�
�
�
�
�
�
����H�D�H�.��3�4�4�4�
�
��i�i�i�i�i�i�i�i�i�ir