问题标签 [pool]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
580 浏览

c++ - 提升池的地图?

基本上我在尝试集中内存管理时给出了一个非常弱的镜头。无论如何, boost::pool 使用特定大小的块。

我最初的想法是重载 new 和 delete,将大小传递给一个单例,该单例将进入相应的提升池并从那里分配。

无论如何,我似乎无法拥有提升池的地图,因为它 MSVC9 给了我以下错误,

为什么会发生这种情况?

编辑

我解决了它,我最终只是将它包装在一个 shared_ptr 中,这解决了这个问题。

只是为了展示一些东西,我不再使用 [] 了,它仍然给出这个错误,

我猜它与std :: make_pair有关?

Etherway 将其包装为智能指针可以正常工作,但这不应该是应该包含在 boost pool 中的东西吗?

0 投票
4 回答
1741 浏览

collision-detection - 如何预先计算台球(台球)游戏中的轨迹?

台球中的大多数碰撞检测算法都使用一种简单的方法,即增加球的位置,然后检查碰撞。当速度非常高时,这种方法效果不佳,因为我们可能会“跳过”碰撞。

我一直在寻找一种方法来预先计算台球比赛中球的轨迹。一旦知道了轨迹,我就可以为球设置动画,直到它们停止移动。而且我不必担心速度,因为碰撞是在数学上检测和解决的。

你知道有没有人这样做过?我不想重新发明轮子。谢谢你。

0 投票
4 回答
1315 浏览

java - 给定应用程序的多个 SingleThreadExecutors……好主意吗?

这个问题是关于使用SingleThreadExecutor(JDK 1.6)的后果。之前在这个论坛上也有过相关问题的提问和回答,但我相信我现在面临的情况,有点不同。

应用程序的各种组件(我们称之为组件 C1、C2、C3 等)生成(出站)消息,主要是为了响应它们从其他组件接收到的消息(入站)。这些出站消息保存在通常是ArrayBlockingQueue实例的队列中 - 也许是相当标准的做法。但是,必须按照添加的顺序处理出站消息。我想使用 aSingleThreadExector是显而易见的答案。我们最终会遇到 1:1 的情况 -一对一 SingleThreadExecutor队列(专用于从一个组件发出的消息) 。

现在,组件的数量(C1、C2、C3...)在给定时刻是未知的。它们将根据用户的需要而存在(最终也将被处理掉)。我们说的是在峰值负载时有 200-300 个这样的组件。按照上述 1:1 的设计原则,我们将安排 200 SingleThreadExecutors。这是我在这里查询的来源。

我对必须创建这么多SingleThreadExecutor的想法感到不舒服。我宁愿尝试使用一个SingleThreadExecutor 池,如果这有意义并且是合理的(任何现成的,之前看到的类/模式?)。我已经阅读了很多关于SingleThreadExecutor这里推荐使用的帖子,但是相同的池呢?

这里有学问的女人和男人是怎么想的?我希望得到指导、纠正或简单地警告:-)。

0 投票
2 回答
659 浏览

web-services - WCF 和带线程的任务

我想使用 WCF 编写一些 Web 服务。

我想在我的网络服务中有一个“线程池”。例如,我有将近 6GB 的数据需要处理。

我希望客户端调用 Web 服务上的操作并创建一个新任务或线程。客户端能够调用 ListRunningTasks(); 并让网络服务返回一个任务列表。如果任务花费太长时间,客户端应该能够强制终止任务,例如 KillTask​​(int taskID); 或者其他的东西。我以前做过一些线程,但不是在 WCF 内部或没有状态的服务中。这可能吗?如果是这样,人们将如何实施这样的事情?任何阅读、链接或建议都会很棒。

谢谢,迈克。

0 投票
6 回答
3659 浏览

c++ - 一个大池还是几个特定类型的池?

我正在开发一款需要高性能的视频游戏,所以我正在尝试设置一个好的内存策略或游戏的特定部分,即游戏“模型”的部分,游戏表示。

我有一个包含整个游戏表示的对象,里面有不同的管理器,以保持表示一致,遵循游戏规则。每个游戏实体当前都是由特定类型的工厂生成的,所以我有几个工厂可以让我根据需要隔离和更改这些实体的内存管理。

现在,我正在这两种选择之间进行选择:

  1. 每种类型都有一个内存池:这将允许真正快速的分配/释放和最小的碎片,因为对象池已经知道分配对象的大小。困扰我的一件事是有几个这样的独立池,也许会使其他解决方案更有效......
  2. 让一个游戏表示的所有工厂共享一个大内存池:(使用带有一些适配器功能的 boost::pool 之类的东西)这样我就可以将所有游戏对象内存分配在一起,并且可以为一个游戏分配一个位我已经知道总大小(并非总是如此)。我不确定它是否比 A 更好,因为池内可能存在碎片,因为在同一个池中会有不同大小的对象,但对于内存分析和其他问题修复来说,它看起来更容易。

现在,我在 A 方面有一些现实世界的经验,所以我对 B 没有经验,并且想就这些解决方案获得一些建议,用于长期项目。哪种解决方案似乎更适合长期项目,为什么?(注意:在这种情况下确实需要一个池,因为游戏模型也用于游戏编辑,因此会有很多小对象的分配/释放)。

为澄清而编辑:我正在使用 C++ if(尚不清楚)

0 投票
2 回答
505 浏览

wcf - WCF 性能:我可以像 ConnectionPooling 那样创建我的对象池吗

我有一个使用相当昂贵的对象来创建的服务。我想提高从调用到调用的性能。

当我删除对象并运行负载测试时,例如每秒可以执行多少次调用,不同情况之间的性能差异很大。

情况1.我删除了昂贵的对象:每秒调用次数〜= 130。情况2.我正常使用它,对象:速率为每秒〜= 2。

我有一个托管在 IIS 2008 服务器上的 .NET WCF 服务。

我想知道是否有一种方法可以创建对象缓存/池并将这些对象交给服务的每次调用。

任何可能有助于这种情况的想法/评论?

0 投票
2 回答
3622 浏览

python - 当任何线程出现异常时,多处理池挂起

我是 Python 新手,正在尝试使用 multiprocessing.pool 程序来处理文件,只要没有异常,它就可以正常工作。如果任何线程/进程出现异常,整个程序都会等待线程

代码片段:

失败消息:



我继续添加了一个异常处理程序来终止进程

但它仍在等待,不确定缺少什么。

0 投票
2 回答
725 浏览

jdbc - 限制访问Weblogic中的连接池?

简而言之,如何根据应用程序名称或 JAR 名称限制对连接池 X 的访问?一个简单的用例可能会有所帮助...

一个商业网络应用程序(称为 WEB_APP_A)使用池 Y 来执行基本的查询 SQL。此网络应用程序的一些用户还可以访问数据库中的一些敏感数据。此代码由 JAR 文件(称为 HR_JAR)提供,可以在需要的地方放入该文件。此 JAR 使用池 X 进行所有连接。

我们不希望 WEB_APP_A 的开发人员使用池 X。我们只希望 HR_JAR 使用池 X。这是为了防止 WEB_APP_A 的开发人员意外或故意滥用 X 提供的访问池。

一些考虑:

  1. 这是遗留代码,所以 HR_JAR 将继续存在
  2. 我们在 Weblogic 9.2 上运行
  3. 我们不能在源代码中保存密码
  4. 我们已经研究了 JDBC 资源的 weblogic 用户级 authn/authz 但这引出了一个问题;我们如何保护我们用来成为每个应用程序/jar 用户的用户信用?

想法?想法?我可以详细说明我尝试过的方法,但我想要新的想法。

0 投票
1 回答
5910 浏览

java - Java EE 应用程序是否有“套接字连接池”之类的?

我正在编写一个 JAX-RS Web 服务。它通过以下方式响应客户端调用:

  1. 从数据库中检索一些信息
  2. 调用外部服务器

对于 2) 服务器不公开 Web 服务接口(即没有 WSDL 接口或 REST API)。相反,它使用基于 TCPIP 的自定义协议。我想从我的 JAX-RS 资源直接向此服务器进行客户端调用,但我不想为每次调用我的 JAX-RS 资源打开连接、进行身份验证和关闭连接。有没有解决的办法?换句话说,Java EE 应用程序是否可以使用类似于“套接字连接池”的东西?我必须使用类似 ESB 的东西吗?或者有没有我忽略的替代方案?

0 投票
1 回答
115 浏览

security - 线程池堆栈安全问题

在一个简单的线程池实现中,正在执行的一段代码能否读取堆栈上一些先前代码留下的数据(如果它在同一个线程实例上运行)?此外,还有其他与线程池相关的固有安全问题吗?