Submit
Path:
~
/
/
proc
/
thread-self
/
root
/
opt
/
alt
/
python35
/
lib
/
python3.5
/
site-packages
/
fasteners
/
tests
/
__pycache__
/
File Content:
test_lock.cpython-35.opt-1.pyc
V�EV45 � @ s� d d l Z d d l Z d d l Z d d l Z d d l m Z d d l Z d d l m Z d d l m Z d Z d d � e d d � D� Z d Z d d � Z d d d � Z d d � Z Gd d � d e j � Z d S)� N)�futures)�test)�_utilsg�������?c C s g | ] } d | d � q S)g{�G�z�?g Y@� )�.0�xr r � /test_lock.py� <listcomp>$ s r � i, c C sC d } x6 | D]. \ } } | | k r | | k r | d 7} q W| S)Nr � r )�times�start�endZoverlaps�s�er r r �_find_overlaps+ s r c sn t j � � t j � � � � f d d � } � � f d d � } | d k rj t d | � t d | � } | d k r t j d | � �u } d } x1 t d | � D] } | j | | � | d 7} q� Wx1 t d | � D] } | j | | � | d 7} q� WWd QRXg } g } xU t � � D]G \ } } } | � j k rM| j | | f � q| j | | f � qW| | f S)Nc sq � j � �^ t j � } t j t | t t � � t j � } � j � j | | f � t j t � Wd QRXd S)N) � read_lockr �now�time�sleep� WORK_TIMES�len�append�READER� NAPPY_TIME)�ident� enter_time� exit_time)�lock�start_stopsr r � read_func7 s z#_spawn_variation.<locals>.read_funcc sq � j � �^ t j � } t j t | t t � � t j � } � j � j | | f � t j t � Wd QRXd S)N) � write_lockr r r r r r r �WRITERr )r r r )r r r r � write_funcB s z$_spawn_variation.<locals>.write_funcr �max_workersr )�collections�deque� fasteners�ReaderWriterLock�maxr �ThreadPoolExecutor�range�submit�listr"