我在生产者-消费者模式中有两个线程。当消费者收到数据时,它会调用一个耗时的函数expensive(),然后进入for循环。但是,如果消费者正在工作时有新数据到达,它应该中止当前工作(退出循环),并从新数据开始。if not q.empty():
break 但此代码的问题是,如果生产者将数据放得太快,并且队列中有许多项,消费者将执行expensive(d)调用加上一个循环迭代,然后对每个项进行中止,这是非常耗时的。
我在pandas中有大量的256行5列的数组,我想要计算统计(最小,最大,平均值,...)每列中4个数组成员的功能。我写了以下代码,但它非常耗时: for j in range(0,256,1): max= array[col].iloc[j:j+4].max()因为我有许多阵列,我想为每个阵列做这个任务,这是非常耗时的。有没有办法在没有<em