问题标签 [agent]
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.
java - JVMTI 代理崩溃
我正在将橡皮擦数据竞争检测算法实现为 JVMTI 代理。当我尝试运行一些示例输入来测试我的代码时,JVM 崩溃,转储如下(也可能显示相同错误的其他堆栈跟踪):
FATAL ERROR in native method: Using JNIEnv in the wrong thread
at Proxy.monitor_enter_(Native Method)
at Proxy.monitor_enter(Proxy.java:30)
at ex1.LifeThreads.setNeighborThreadChange(LifeThreads.java:36)
at ex1.LifeThreads.neighbor(LifeThreads.java:425)
at ex1.LifeThreads.standardItr(LifeThreads.java:321)
at ex1.LifeThreads.run(LifeThreads.java:462)
(这种事后跟踪可以通过 Sun JVM 的 -Xcheck:jni 选项获得)
在代码中,我执行了与各种 JDK 示例(heapViewer、heapTracker 等通过具有本机方法的一些代理 java 类)中所示相同的检测。在每条指令Proxy.monitor_enter_
之后调用本机方法。monitorenter
这是 monitor_enter_ 的代码:
,其中scoped_lock
基本上是 JVMTI Raw Monitor 进入/退出的范围锁,
thread_t
只是一个包装 some 的结构std::vector
,其中存储类的实例lock
(它本身仅包装jobject
全局引用global_ref
),当thread->lock( lock(global_ref))
被调用时。
JVMTI 环境。在代理单例中全局缓存,而线程本地的 JNI env 在每次使用之前都会重新加载(效率不高,但现在我不在乎),如下所示:
macos - 用于启动另一个应用程序的应用程序的 OSX LaunchAgent
我正在尝试为 cassandra 设置本地 LaunchAgent,但遇到了一个问题,因为bin/cassandra
它只是一个启动的 shell 脚本:
我的 LaunchAgent 启动脚本,但要么从不启动 cassandra,要么不允许它产生子进程,或者,我不完全确定发生了什么,但似乎我以前遇到过这个问题。我知道让它工作的唯一方法是将我的 LaunchAgent 从:
至...
我想知道是否有人知道我如何仅从 LaunchAgent 引用 shell 脚本,而不是从中提取所有参数ps aux
search - AIMA - 目标制定
在《人工智能:现代方法》第 3 章一书中,第一个问题询问为什么解决问题的代理(搜索)需要先制定目标,然后再制定问题。我的猜测是,代理需要首先制定目标,以便决定它将在问题解决过程中使用的动作的抽象级别(不是在现实中)。问题通常是具有初始状态和最终状态(目标)的图,并且代理必须找到导致目标的一系列动作。
谢谢,
java - 这个模拟器的最佳架构是什么?
我必须用Java制作一个模拟器,它将模拟在高速公路上行驶的汽车。高速公路上应该有3条车道,每条车道都有匀速行驶的汽车。在这条高速公路上,有一个特工,他必须开车通过,不能撞到任何其他汽车。详细说明见本文第 2.5 节和图 5。
这张图片来自上述论文,显示了高速公路的外观:
我的目标是只编写一个模拟器(和 GUI),而不是代理的逻辑。现在,我想设计这个模拟器的架构,这就是我需要帮助的地方。
我的想法是,代理的 API 的外观是:
高速公路上的代理(汽车)应该是这个类的后代。在每一步中,模拟器调用函数run()
,代理逻辑在哪里。在这个函数中,代理可以调用如下函数:
因此,在每一步中,代理都可以决定他是否留在当前车道,或者他是左转还是右转。仅此而已,代理可以做什么。
所以这是代理API,但我不知道如何设计模拟器的其余部分。我第一次尝试模拟架构是:
这不是一个好的架构。方法应该在哪个类中goLeft()
,goRight()
以及getNearestCarInLane()
?因为这些方法必须在BaseAgent
课堂内,但必须知道高速公路上每辆车的位置。所以最后,我有这样的事情:
这是可怕和丑陋的。
所以我需要一些聪明人的帮助。有人可以给我一个关于模拟器/架构的书籍、文章的链接吗?或者解释我做错了什么?
我不是程序员,这个项目是我所在学院的一门名为Software Engineering的选修课程的一部分。
build - TFS 2010 构建代理:是否可以从 tfs 代理获取最新代码?
我们希望为我们分散在陆上和海上的团队实施 TFS 2010。我们为离岸团队计划了 TFS 代理,在岸上设置了 TFS。我知道,当离岸的客户签出他们的代码时,它将来自代理,而 Web 服务调用将直接在应用程序层上。我们还将在海上和陆上建造机器。陆上构建机器可以从应用层获取最新的代码版本,这很好。我的问题是,当离岸的构建机器请求获取最新版本时,它会直接从岸上的应用程序层获取代码,还是有可以从 tfs 代理获取文件的规定?
对此的任何帮助都会有很大帮助。谢谢。
c# - 将数据传递给 BackgroundServiceAgent
我有两个项目,一个是“Windows phone 应用程序”,另一个是“Windows phone 音频播放器代理”。
为了向 AudioPlayer 提供类似“下一首曲目”的内容,我需要一种在我的应用程序和代理之间进行通信的方法。
我的第一次尝试是单例,我不知道为什么,但他们都创建了自己的单例实例。
那么最好/最简单的沟通方式是什么?
snmp - 如何在 net-snmp 中查看 DEBUGMSGTL 的日志
我正在尝试编写一个使用 net-snmp 支持的 agentX 的 snmp 子代理。起初,我使用了 net-snmp FAQ 中的示例代码:
http://www.net-snmp.org/wiki/index.php/TUT:Writing_a_Subagent
从示例代码 ( example-demon.c,nstAgentSubagentObject.c,nstAgentSubagentObject.h ) 中,我构建了一个子代理,它可以使用 agentX 来执行 snmpget 和 snmpset。
我的问题是:从nstAgentSubagentObject.c中的代码中,有很多跟踪代码,如下所示:
但是我在任何地方都看不到日志。
我试图启动 snmpd(snmp 的恶魔)
snmpd -f -DnstAgentSubagentObject -Lf /tmp/snmp.log
。
但是我仍然看不到日志。谁能告诉我如何查看 DEBUGMSGTL 的日志?
agent - 移动代理使用哪个框架?
在得知JADE不支持 Mobile Agent 概念而只支持传统的 Agent Framework 之后,我想知道哪个框架或技术仍然使用 Mobile Agent Concepts,我可以使用它来构建应用程序。IBM 的 Aglets 本来可以,但它不再维护和修改(我想,因为我没有看到非常积极地参与 Aglet 相关论坛)
agent - 使用 Firefox 的随机用户代理随机化浏览器字符串
我有 randonuseragent 和 refcontrol 但我需要一个系统,当 firefox 打开时它会选择一个随机的 UA 字符串。
如果您认为脚本可以运行“IE”Greasemonkey.. 我需要一个指针。
c - 如何在 C 中初始化 SNMP
谁能告诉我如何使用 SNMP 库在 c 中初始化 SNMP 代理?对“init_agent()”的调用不起作用。
我在某处读到“init_agent()”函数应该在“init_snmp()”之前使用。这是我在编译代码时得到的:
我已经使用“-lsnmp”将编译器链接到 snmp 库。