gpt4 book ai didi

java - 关于在 JGAP 中使用多线程,是否有任何我应该知道的 "gotchas"?

转载 作者:搜寻专家 更新时间:2023-11-01 02:30:38 25 4
gpt4 key购买 nike

我正在从事一个遗传编程项目,该项目试图生成代表图像的 GP。我的方法是将图像分成不同的独立部分,并让单独的线程对它们进行演化工作。

由于事物将是异步的,自然地您希望对象也是独立的。问题是我注意到 JGAP 中的某些对象实际上是共享变量,因此它们将在线程之间共享,这会导致很多问题。例如,我注意到所有 Variables具有相同名称的是相同的,这意味着如果我想同时评估多个 IGPProgram,我必须锁定变量,这确实会影响性能。

我还注意到,如果您尝试创建多个 GPConfiguration,程序会提示您必须先重置它。所以在我看来,所有 GPConfigurations 都是共享的(即你不能让多个线程同时创建多个配置),这是一个问题,因为创建 GPProblems 会花费很多时间,而我正在创建很多 GPProblems ,所以我希望通过将工作拆分为多个线程来减少所花费的时间。

在使用 JGAP 和线程时,是否有任何我需要了解的“陷阱”?不幸的是,在 JGAP 文档中并没有太多涉及多线程,我希望我能从可能有 JGAP 经验的人那里得到一些建议。

最佳答案

根据FAQ ,JGAP“确实支持多线程计算”。然而,这并不意味着整个 API/对象图是完全线程安全的。您是否有演示您遇到的问题的代码示例?如果不稍微提炼一下您的问题,我认为您不会得到规范的答案。

JGAP 中有一个线程示例 distributionexamples/src/examples/simpleBooleanThreaded 下压缩。

关于java - 关于在 JGAP 中使用多线程,是否有任何我应该知道的 "gotchas"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10325446/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com