草庐IT

out_queue

全部标签

python - 将 asyncio.Queue 用于生产者-消费者流程

我对如何将asyncio.Queue用于特定的生产者-消费者模式感到困惑,在这种模式下,生产者和消费者同时独立运作。首先,考虑这个例子,它紧跟docsforasyncio.Queue中的例子。:importasyncioimportrandomimporttimeasyncdefworker(name,queue):whileTrue:sleep_for=awaitqueue.get()awaitasyncio.sleep(sleep_for)queue.task_done()print(f'{name}hassleptfor{sleep_for:0.2f}seconds')async

python - Queue.get 会阻塞 main 吗?

我知道python中的Queue.get()方法是一个阻塞函数。我需要知道如果我在main里面实现了这个函数,等待一个线程设置的对象,这是否意味着所有的main都会被阻塞。例如,如果main包含发送器和接收器的功能,两者是否可以一起工作? 最佳答案 是的——如果您在线程或main函数中调用some_queue.get(),程序将阻塞在那里直到某个对象通过队列.但是,可以使用队列,以便它们don'tblock,或者他们有某种超时:importQueuewhileTrue:try:data=some_queue.get(False)#I

Python Force List Index out of Range 异常

我有一个列表列表x=[[1,2,3],[4,5,6],[7,8,9]]我希望代码抛出数组越界异常,类似于索引超出范围时在Java中的做法。例如,x[0][0]#1x[0][1]#2x[0-1][0-1]#如果抛出异常,我希望它返回0。try:x[0-1][0-1]#Iwantthistothrowanexceptionexcept:print0#printstheinteger0我认为基本上只要索引为负,就抛出异常。 最佳答案 您可以创建自己的列表类,继承默认列表类,并实现返回指定索引中元素的__getitem__方法:classM

python cql 驱动程序-cassandra.ReadTimeout- "Operation timed out - received only 1 responses."

我正在使用Cassandra2.0和pythonCQL。我创建了一个列族如下:CREATEKEYSPACEIFNOTEXISTSIdentificationWITHREPLICATION={'class':'NetworkTopologyStrategy','DC1':1};USEIdentification;CREATETABLEIFNOTEXISTSentitylookup(namevarchar,valuevarchar,entity_iduuid,PRIMARYKEY((name,value),entity_id))WITHcaching=all;然后我尝试按如下方式计算此CF

python - 如何关闭 tf.contrib.learn Estimator 中的 events.out.tfevents 文件

在tensorflow.contrib.learn中使用estimator.Estimator时,在训练和预测之后,modeldir中有这些文件:p>检查点events.out.tfevents.1487956647events.out.tfevents.1487957016图表.pbtxtmodel.ckpt-101.data-00000-of-00001model.ckpt-101.indexmodel.ckpt-101.meta当图形复杂或变量数量大时,graph.pbtxt文件和事件文件可能会非常大。这是一种不写这些文件的方法吗?由于模型重新加载只需要检查点文件,因此删除它们不

python - 从 multiprocessing.Queue 获得近后进先出行为的干净方法? (甚至只是*不*接近先进先出)

有谁知道从multiprocessing.Queue获得接近LIFO甚至不接近FIFO(例如随机)行为的干净方法?替代问题:有人可以指出管理multiprocessing.Queue背后的实际存储结构的线程的代码吗?这似乎是微不足道的提供大约后进先出的访问权限,但我在试图找到它的过程中迷失了方向。注意事项:我相信multiprocessing.Queuedoesnotguaranteeorder.美好的。但它是near-FIFO,所以near-LIFO会很棒。我可以将所有当前项目从队列中取出并在处理它们之前颠倒顺序,但我更愿意尽可能避免困惑。(编辑)澄清一下:我正在使用multipro

Python 2.6 multiprocessing.Queue 与线程兼容?

我正在试验Python2.6中的新多处理模块。我正在创建多个进程,每个进程都有自己的multiprocessor.JoinableQueue实例。每个进程生成一个或多个共享JoinableQueue实例(通过每个线程的__init__方法传入)的工作线程(threading.Thread的子类)。它似乎通常可以工作,但偶尔会出现不可预测的失败并出现以下错误:File"C:\DocumentsandSettings\Brian\Desktop\testscript.py",line49,inrunself.queue.task_done()File"C:\Python26\lib\mul

python - 在 python 中清空 multiprocessing.queue(-1) 的首选方法

我想拉出当前队列中的所有项目。还有一个线程不断的在另一端放item,每期我都想获取当前队列中的所有item。有什么理由更喜欢:res=[]whileq.qsize>0:res.append(q.get())或res=[]whileTrue:try:res.append(q.get(block=False))exceptQueue.Empty:break现在文档明确指出qsize()>0不会阻止队列在get上阻塞,但这是否仅在多个线程可以从输出中获取的情况下才正确?Queue.qsize()Returntheapproximatesizeofthequeue.Note,qsize()>0

RuntimeError: CUDA out of memory

今天在训练模型的时候突然报了显存不够的问题,然后分析了一下,找到了解决的办法,这里记录一下,方便以后查阅。注:以下的解决方案是在模型测试而不是模型训练时出现这个报错的!RuntimeError:CUDAoutofmemory完整的报错信息:Traceback(mostrecentcalllast):File"/home/pytorch/LiangXiaohan/MI_Same_limb/Joint_Motion_Decoding/SelfAten_Mixer/main.py",line420,inmodule>main()File"/home/pytorch/LiangXiaohan/MI_S

python - 'index 0 is out of bounds for axis 0 with size 0' 是什么意思?

我是python和numpy的新手。我运行了我编写的代码,我收到了这条消息:'索引0超出了大小为0的轴0的范围'没有上下文,我只想弄清楚这是什么意思。问这个问题可能很愚蠢,但是轴0和大小0是什么意思?索引0表示数组中的第一个值..但我无法弄清楚轴0和大小0是什么意思。“数据”是一个文本文件,在两列中包含大量数字。x=np.linspace(1735.0,1775.0,100)column1=(data[0,0:-1]+data[0,1:])/2.0column2=data[1,1:]x_column1=np.zeros(x.size+2)x_column1[1:-1]=xx_colum