Ilya Egorov

Results 12 issues of Ilya Egorov

Hi, I'd like to add [aiologic](https://github.com/x42005e1f/aiologic) to your list of awesome libraries. My library can be used to communicate with both threads and event loops in those threads, which can...

### Things to check first - [x] I have searched the existing issues and didn't find my bug already reported there - [x] I have checked that my bug is...

bug

## What do these changes do? This PR encapsulates the notification logic into new Condition subclasses, making it easier to understand the code and add new changes. ## Are there...

## What do these changes do? In a multithreaded environment, it is possible that nowait methods may be called in event loops other than the one in which asynchronous methods...

One of the options for working with two different concurrent libraries is to run them in separate threads. For example, if a user depends on a library written using `eventlet`,...

# Bug report ### Bug description: Currently, the [`qsize()`](https://docs.python.org/3/library/multiprocessing.html#multiprocessing.Queue.qsize) and [`full()`](https://docs.python.org/3/library/multiprocessing.html#multiprocessing.Queue.full) methods rely on the semaphore value (they change their result immediately after the put operation is performed). However, the...

type-bug
stdlib
topic-multiprocessing

Hello, I would like to suggest two of my libraries: [aiologic](https://github.com/x42005e1f/aiologic) and [culsans](https://github.com/x42005e1f/culsans). Their purpose is to combine three worlds: the world of threads, the world of greenlets and the...

package suggestion

# Bug report ### Bug description: Currently, all blocking operations in [`concurrent.interpreters.Queue`](https://docs.python.org/3/library/concurrent.interpreters.html#concurrent.interpreters.Queue) work via polling. In general, this approach is satisfactory for an initial implementation (unfortunately, this is a cancer...

type-bug
type-feature
stdlib
topic-subinterpreters

When there are no ready tasks, [Curio waits until the next deadline](https://github.com/dabeaz/curio/blob/751b0d313c25ac03d57f475c8aafa1fca6005785/curio/kernel.py#L633-L649). However, on non-Windows systems, there is no upper limit by default, so any sleep/timeout that is too large...

`UniversalQueue` can cause a deadlock in any `put()` method (sync / curio / asyncio) as a result of cancelling a `get()` call from Curio. This is because the [cancellation handling...