[issue45311] Threading Semaphore and BoundedSemaphore release method implementation improvement

2021-10-21 Thread Besart Dollma


Besart Dollma  added the comment:

This is another illogical behaviour, if I am trying to release 5 threads, and I 
fail the releasing the first one, why should I try the first one 5 times?

--

___
Python tracker 
<https://bugs.python.org/issue45311>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue45311] Threading Semaphore and BoundedSemaphore release method implementation improvement

2021-09-28 Thread Besart Dollma


New submission from Besart Dollma :

Hi, 
I was looking at the implementation of Semaphore and BoundedSemaphore in 
threading.py and I saw that `notify` is called on a loop n times while it 
supports an n parameter. 

https://github.com/python/cpython/blob/84975146a7ce64f1d50dcec8311b7f7188a5c962/Lib/threading.py#L479

Unless I am missing something, removing the loop and replacing it with 
self._cond.notify(n) will slightly improve performance by avoiding the function 
call overhead.

I can prepare a Pool Request if the change is acceptable.
Thanks,

--
components: Library (Lib)
messages: 402779
nosy: besi7dollma
priority: normal
severity: normal
status: open
title: Threading Semaphore and BoundedSemaphore release method implementation 
improvement
type: enhancement
versions: Python 3.9

___
Python tracker 
<https://bugs.python.org/issue45311>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com