File "shared_memory.cpython-39.opt-2.pyc"

Full Path: /home/attunedd/public_html/byp/izo/con7ext_sym404/rintoar.txt/opt/alt/python39/lib64/python3.9/multiprocessing/__pycache__/shared_memory.cpython-39.opt-2.pyc
File size: 11.24 KB
MIME-type: text/x-bytecode.python
Charset: 8 bit

a

XC?hG@sddgZddlmZddlZddlZddlZddlZddlZddlZej	dkr\ddl
Z
dZnddlZdZej
ejBZdZerd	Znd
ZddZGd
ddZdZGdddZdS)SharedMemory
ShareableList)partialNntFTz/psm_Zwnsm_cCs"tttd}tt|}|S)N)_SHM_SAFE_NAME_LENGTHlen_SHM_NAME_PREFIXsecretsZ	token_hex)nbytesnamerB/opt/alt/python39/lib64/python3.9/multiprocessing/shared_memory.py_make_filename'src@seZdZdZdZdZdZejZ	dZ
er*dndZdddZ
d	d
ZddZd
dZeddZeddZeddZddZddZdS)rNiTFrc
	Cs|dkstd|r0ttjB|_|dkr0td|durL|jtj@sLtdtrD|durt}ztj	||j|j
d|_WntyYqZYn0||_
qqZn.|jrd|n|}tj	||j|j
d|_||_
z<|r|rt|j|t|j}|j}t|j||_Wnty&|Yn0ddlm}||j
d	n*|r|durZtn|}ttjtjtj|d
?d@|d@|}zjt}|tjkr|durttj t!tj |tjnWt"|qJtjd||d
|_Wt"|nt"|0||_
qnqJnb||_
t#tj$d|}z"t%|tj$ddd}	Wt"|nt"|0t&|	}tjd||d
|_||_'t(|j|_)dS)Nrz!'size' must be a positive integerz4'size' must be a positive number different from zeroz&'name' can only be None if create=True)mode/)register
shared_memory lr)ZtagnameF)*
ValueError_O_CREXosO_RDWR_flagsO_EXCL
_USE_POSIXr_posixshmemZshm_open_mode_fdFileExistsError_name_prepend_leading_slash	ftruncatefstatst_sizemmap_mmapOSErrorunlinkresource_trackerr_winapiZCreateFileMappingZINVALID_HANDLE_VALUEZNULLZPAGE_READWRITEZGetLastErrorZERROR_ALREADY_EXISTSerrnoZEEXISTstrerrorZCloseHandleZOpenFileMappingZ
FILE_MAP_READZ
MapViewOfFileZVirtualQuerySize_size
memoryview_buf)
selfr
createsizeZstatsrZ	temp_nameZh_mapZlast_error_codeZp_bufrrr__init__Js






zSharedMemory.__init__cCs$z|WntyYn0dSN)closer*r3rrr__del__szSharedMemory.__del__cCs|j|jd|jffS)NF)	__class__r
r5r9rrr
__reduce__szSharedMemory.__reduce__cCs|jjd|jd|jdS)N(z, size=))r;__name__r
r5r9rrr__repr__szSharedMemory.__repr__cCs|jSr7)r2r9rrrbufszSharedMemory.bufcCs.|j}tr*|jr*|jdr*|jdd}|S)Nrr)r#rr$
startswith)r3Z
reported_namerrrr
s

zSharedMemory.namecCs|jSr7)r0r9rrrr5szSharedMemory.sizecCsX|jdur|jd|_|jdur4|jd|_trT|jdkrTt|jd|_dS)Nrr)r2releaser)r8rr!rr9rrrr8s



zSharedMemory.closecCs2tr.|jr.ddlm}t|j||jddS)Nr)
unregisterr)rr#r,rDrZ
shm_unlink)r3rDrrrr+s
zSharedMemory.unlink)NFr)r?
__module____qualname__r#r!r)r2rrrr rr$r6r:r<r@propertyrAr
r5r8r+rrrrr1s&
l




utf8c@seZdZedededededdjdiZ	dZ
dd	d
d	dd	dd	d
ZeddZ
d5ddddZddZddZddZddZddZddZdd Zd!d"Zed#d$Zed%d&Zed'd(Zed)d*Zed+d,Zed-d.Zed/d0Zd1d2Zd3d4Z e!e"j#Z$dS)6rqdzxxxxxxx?z%dsNzxxxxxx?xcCs|Sr7rvaluerrr<lambda>zShareableList.<lambda>cCs|dtSN)rstripdecode	_encodingrLrrrrNrOcCs
|dSrP)rRrLrrrrNrOcCsdSr7r)Z_valuerrrrNrO)rrrcCs:t|ttdjfsdSt|tr$dSt|tr2dSdSdS)NrrrrU)
isinstancestrbytesr;rLrrr_extract_recreation_codes

z&ShareableList._extract_recreation_coder
cs|dus|dur|pd}fdd|D}t|_d}dg_|D]6}||ddkr\jnt|dd7}j|qDfdd|D}tdjd		|j
j}t|d
|d_
n
t|_
|durttjdjj
jdjgjRtjd		|j
jjgfdd
|DRtjj
j
jjgfdd
|DRtjjj
jjg|Rn$t_ttjj
jd_dS)NrcsPg|]H}t|ttfs$jt|n&jt|jt|jdfqS)r)rVrWrX_types_mappingtype
_alignmentr	.0itemr9rr
<listcomp>+sz*ShareableList.__init__.<locals>.<listcomp>rrscsg|]}|qSr)rYr^r9rrra=srIT)r4r5c3s&|]}t|tr|n|VqdSr7)rVrWencoder_v_encrr	<genexpr>XrOz)ShareableList.__init__.<locals>.<genexpr>c3s|]}|VqdSr7)rdrergrrri^rOrK)r		_list_len_allocated_offsetsr]intappendstructZcalcsize_format_size_metainfojoin_format_packing_metainfo_format_back_transform_codesrshmrT	pack_intorA_offset_data_start_offset_packing_formats_offset_back_transform_codeslistunpack_from)r3Zsequencer
Z_formatsoffsetfmtZ_recreation_codesZrequested_sizer)rhr3rr6(s

&




zShareableList.__init__cCsj|dkr|n||j}||jks*|jdkr2tdtd|jj|j|dd}|d}|t	}|S)Nr Requested position out of range.8srKrQ)
rj
IndexErrorrnryrsrArvrRrSrT)r3positionrfr{
fmt_as_strrrr_get_packing_formatqs

z!ShareableList._get_packing_formatcCsF||jks|jdkrtdtd|jj|j|d}|j|}|S)Nrr|b)rjr~rnryrsrArw_back_transforms_mapping)r3rtransform_codeZtransform_functionrrr_get_back_transforms
z!ShareableList._get_back_transformcCsh||jks|jdkrtdtd|jj|j|d|t|	|}td|jj|j
||dS)Nrr|r}rKr)rjr~rnrtrsrArvrdrTrYrw)r3rrrMrrrr!_set_packing_format_and_transforms
z/ShareableList._set_packing_format_and_transformcCsv|dkr|n||j}z.|j|j|}t|||jj|\}Wnty^tdYn0|	|}||}|S)Nrzindex out of range)
rjrurkrnryrrsrAr~r)r3rrzrfZback_transformrrr__getitem__s

zShareableList.__getitem__c	Cs|dkr|n||j}z"|j|}|j|}||}WntyRtdYn0t|ttfsv|jt	|}|}n`|j|d|}t|tr|
tn|}t||krt
d|ddkr|}n|jt|f}||||t||jj||dS)Nrzassignment index out of rangerz(bytes/str item exceeds available storagerrb)rjrkrurr~rVrWrXr[r\rdrTr	rrrnrtrsrA)	r3rrMZitem_offsetrzZcurrent_formatZ
new_formatZ
encoded_valueZallocated_lengthrrr__setitem__s8

zShareableList.__setitem__cCst|j|jjddfS)NrZr)rr;rsr
r9rrrr<szShareableList.__reduce__cCstd|jjddS)NrIr)rnryrsrAr9rrr__len__szShareableList.__len__cCs"|jjdt|d|jjdS)Nr=z, name=r>)r;r?rxrsr
r9rrrr@szShareableList.__repr__csdfddtjDS)Nrcc3s|]}|VqdSr7)r)r_ir9rrrisz'ShareableList.format.<locals>.<genexpr>)rprangerjr9rr9rformatszShareableList.formatcCsd|jdS)NrIrrjr9rrrrosz#ShareableList._format_size_metainfocCs
d|jS)Nr}rr9rrrrqsz&ShareableList._format_packing_metainfocCs
d|jS)Nrrr9rrrrrsz*ShareableList._format_back_transform_codescCs|jddS)NrrKrr9rrrrusz ShareableList._offset_data_startcCs|j|jdS)Nr)rurkr9rrrrvsz%ShareableList._offset_packing_formatscCs|j|jdS)NrK)rvrjr9rrrrwsz*ShareableList._offset_back_transform_codescstfdd|DS)Nc3s|]}|kVqdSr7r)r_entryrLrrrirOz&ShareableList.count.<locals>.<genexpr>)sum)r3rMrrLrcountszShareableList.countcCs4t|D]\}}||kr|Sqt|ddS)Nz not in this container)	enumerater)r3rMrrrrrindex
s
zShareableList.index)N)%r?rErFrlfloatboolrWrXr;r[r]rstaticmethodrYr6rrrrrr<rr@rGrrorqrrrurvrwrrclassmethodtypesGenericAlias__class_getitem__rrrrrsR

I!







)__all__	functoolsrr(rr.rnrrr
r-rrO_CREATrrrr
rrrTrrrrr<module>s,

E