Asynchronous Python:优先处理任务并无锁运行异步任务

Asynchronous Python:优先处理任务并无锁运行异步任务,asynchronous,gevent,greenlets,Asynchronous,Gevent,Greenlets,现在我正在使用Gevent,我想问两个问题: 是否有一种执行特定任务的方法,该方法将永远不会异步执行(而不是在每个任务中使用锁) 有没有办法对Gevent中衍生的任务进行优先级排序?类似于一组将以低优先级生成的任务,这些任务将在所有其他任务完成时执行例如,两个任务在每个任务以不同优先级处理套接字请求时侦听不同的套接字 如果在Gevent中不可能,是否还有其他库可以实现 编辑 也许芹菜可以帮我吗?如果你想管理计算资源,Python异步库在这里帮不上忙,因为,好吧,它们都没有优先级调度器。所有的

现在我正在使用Gevent,我想问两个问题:

  • 是否有一种执行特定任务的方法,该方法将永远不会异步执行(而不是在每个任务中使用锁)
  • 有没有办法对Gevent中衍生的任务进行优先级排序?类似于一组将以低优先级生成的任务,这些任务将在所有其他任务完成时执行例如,两个任务在每个任务以不同优先级处理套接字请求时侦听不同的套接字
如果在Gevent中不可能,是否还有其他库可以实现

编辑

也许芹菜可以帮我吗?

如果你想管理计算资源,Python异步库在这里帮不上忙,因为,好吧,它们都没有优先级调度器。所有的绿线都是相等的

任务队列通常有优先级的概念,所以芹菜或豆茎是一种方法


如果您的问题不需要任务(重新)执行保证、持久性和多机工作分配,那么我只需要启动几个工作进程,使用操作系统为它们分配CPU、IO和磁盘优先级,并通过UNIX套接字DGRAM发送工作/结果。一种任务队列的特别简单版本。如果你这样做,请以开源项目的形式分享你的工作,我相信这种解决方案是有需求的。

谢谢,也许我会在周末做一些开源项目来解决我的问题。。但在此期间,我将只使用带有锁的Gevent,并将所有低优先级任务放在不同的低优先级进程中