标签: queue

将multiprocessing.Queue转储到列表中

我想把一个multiprocessing.Queue列入一个列表.为此,我编写了以下函数:

import Queue

def dump_queue(queue):
    """
    Empties all pending items in a queue and returns them in a list.
    """
    result = []

    # START DEBUG CODE
    initial_size = queue.qsize()
    print("Queue has %s items initially." % initial_size)
    # END DEBUG CODE

    while True:
        try:
            thing = queue.get(block=False)
            result.append(thing)
        except Queue.Empty:

            # START DEBUG CODE
            current_size = queue.qsize()
            total_size = current_size + len(result)
            print("Dumping complete:")
            if current_size == initial_size:
                print("No items were added to the queue.")
            else:
                print("%s items …
Run Code Online (Sandbox Code Playgroud)

python queue multiprocessing

21
推荐指数
2
解决办法
2万
查看次数

Java中的快速队列

我正在寻找queueJava中的快速实现.我看到它LinkedList实现了Queue接口,但它只会像LinkedList右边一样快?有没有办法让队列更快,尤其是add(我只需要poll,add并检查empty).在线下我可能还需要一个PriorityQueue但还没有.

java queue

21
推荐指数
3
解决办法
3万
查看次数

MATLAB中有"队列"吗?

我想将递归函数转换为迭代函数.我通常做的是,我初始化一个队列,把第一个作业放入队列.然后在while循环中,我从队列中消耗作业并将新的作业添加到队列中.如果我的递归函数多次调用自身(例如,走一棵树有很多分支),就会添加多个作业.伪代码:

queue = new Queue();
queue.put(param);
result = 0;

while (!queue.isEmpty()) {
    param = queue.remove();
    // process param and obtain new param(s)
    // change result
    queue.add(param1);
    queue.add(param2);
}

return result;
Run Code Online (Sandbox Code Playgroud)

我在MATLAB中找不到任何类似结构的队列.我可以使用vector来模拟队列中添加3的队列:

a = [a 3]
Run Code Online (Sandbox Code Playgroud)

和删除元素是

val = a(1);
a(1) = [];
Run Code Online (Sandbox Code Playgroud)

如果我正确地使用MATLAB,这种方法将成为性能杀手.

在MATLAB中使用队列是否有理智的方法?

那么其他数据结构呢?

queue matlab data-structures

21
推荐指数
3
解决办法
3万
查看次数

强制Oracle使用SKIP LOCKED返回TOP N行

关于如何在Oracle和SQL Server中实现类似队列的表(锁定特定行,选择一定数量的行,以及跳过当前锁定的行),有几个 问题.

N假设至少有N行符合条件,我怎样才能保证检索到某些number()行?

从我所看到的,Oracle WHERE在确定要跳过哪些行之前应用谓词.这意味着如果我想从表中拉出一行,并且两个线程同时执行相同的SQL,则一个将接收该行,另一个将接收一个空结果集(即使有更多符合条件的行).

这违背了SQL Server如何显示处理UPDLOCK,ROWLOCKREADPAST锁定提示.在SQL Server中,TOP神奇地似乎限制了成功获得锁定的记录数.

请注意,这里这里有两篇有趣的文章.

ORACLE

CREATE TABLE QueueTest (
    ID NUMBER(10) NOT NULL,
    Locked NUMBER(1) NULL,
    Priority NUMBER(10) NOT NULL
);

ALTER TABLE QueueTest ADD CONSTRAINT PK_QueueTest PRIMARY KEY (ID);

CREATE INDEX IX_QueuePriority ON QueueTest(Priority);

INSERT INTO QueueTest (ID, Locked, Priority) VALUES (1, NULL, 4);
INSERT INTO QueueTest (ID, Locked, Priority) VALUES (2, NULL, …
Run Code Online (Sandbox Code Playgroud)

sql sql-server oracle queue

21
推荐指数
2
解决办法
2万
查看次数

何时使用队列而不是arraylist

在ArrayList上使用Queue的一个基本参数是Queue保证FIFO行为.

但是如果我向ArrayList添加10个元素然后从第0个元素开始迭代元素,那么我将按照添加它们的顺序检索元素.基本上,这保证了FIFO行为.

与传统的ArrayList相比,Queue有什么特别之处?

java queue arraylist

21
推荐指数
3
解决办法
3万
查看次数

laravel 5中应用程序URL的含义是什么?

Config/app.phplaravel源中,实际使用的是url什么?

它说要使用的应用程序URL artisan command line tool,那么实际应该是什么?

我的意思是应该是http://mydomainname.com或应该是/var/www/laravel//var/www/laravel/public

当前配置

/*
|--------------------------------------------------------------------------
| Application URL
|--------------------------------------------------------------------------
|
| This URL is used by the console to properly generate URLs when using
| the Artisan command line tool. You should set this to the root of
| your application so that it is used when running Artisan tasks.
|
*/

'url' => 'http://localhost/',
Run Code Online (Sandbox Code Playgroud)

如果我的应用程序源位于/var/www/目录并且laravel公用文件夹是/var/www/laravel/public ,http://mydomainname.com则指向在/var/www/laravel/public目录中解析

使用案例: …

php queue laravel laravel-5 artisan

21
推荐指数
2
解决办法
2万
查看次数

队列的实际应用是什么?

什么是队列在计算机科学中的实际应用.我们在哪里使用它们?为什么?我听说我们在视频游戏和计算机模拟程序中使用它们,是真的吗?为什么?除了这两个领域,队列作为数据结构的其他实际应用是什么?

queue computer-science

20
推荐指数
4
解决办法
7万
查看次数

如何清除Oracle AQ中的队列

我第一次测试Oracle AQ.我已经设法在我创建的队列中创建了2000行测试插入.

现在,我想清除那些.在我自学的时候,我将到期时间定为一个月.我不能等那么久.我不认为我应该从队列表中删除它们.

最好的方法是什么?

oracle queue jms oracle-aq

20
推荐指数
1
解决办法
6万
查看次数

一次性清除天蓝色服务总线队列

我们在项目中使用服务总线队列.当管理员选择清除队列时,我们需要一种功能来从队列中删除所有消息.我在网上搜索但找不到任何在QueueClient课堂上做这个的功能.

我是否必须逐个弹出所有消息,然后将它们标记为完成以清除队列或者有更好的方法吗?

QueueClient queueClient = _messagingFactory.CreateQueueClient(
                              queueName, ReceiveMode.PeekLock);

BrokeredMessage brokeredMessage = queueClient.Receive();

while (brokeredMessage != null )
{
    brokeredMessage.Complete();
    brokeredMessage = queueClient.Receive();
}
Run Code Online (Sandbox Code Playgroud)

.net queue azure azureservicebus azure-servicebus-queues

20
推荐指数
5
解决办法
2万
查看次数

我什么时候会使用优先级队列?

使用我所知道的优先级队列的唯一例子是Dijkstra算法(用于计算最低成本)

在其他情况下它会有用吗?

algorithm queue priority-queue

20
推荐指数
4
解决办法
2万
查看次数