问题标签 [instrumentation]

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 回答
608 浏览

wcf - 附加 VS 2010 探查器时无法访问 WCF 服务

将 Visual Studio 2010 Profiler 附加到我的 wcf 服务后,我收到以下错误。

无法激活请求的服务“net.tcp://host:port/path/myservice.svc”。有关详细信息,请参阅服务器的诊断跟踪日志。

否则该服务运行良好,一旦我停止分析,我就可以再次连接并使用该服务。

我能在网上找到的最接近类似情况的地方是这里,但 Net.Tcp 侦听器适配器不会在我的服务器上停止,重新启动它也无济于事。iisreset 也不会。

我在事件日志中收到以下条目:

初始化 AppDomain 失败:/LM/W3SVC/1/ROOT/MyService

异常:System.Web.HttpException

消息:无法加载文件或程序集“MyService”或其依赖项之一。试图加载格式不正确的程序。内部异常:System.Configuration.ConfigurationErrorsException

消息:无法加载文件或程序集“MyService”或其依赖项之一。试图加载格式不正确的程序。

内部异常:System.BadImageFormatException

消息:无法加载文件或程序集“MyService”或其依赖项之一。试图加载格式不正确的程序。

这听起来像分析器在检测时创建了一个错误的 dll 吗?如果是这样,我将如何解决这个问题?

0 投票
1 回答
210 浏览

android - 测试此活动

我有一个活动,我想对其进行自动化测试。Activity的启动是这样的:

  • 从 Intent 获取数据
  • 绑定到服务并获取特定于该活动的意图数据的一些对象
  • 查询这些对象并将信息打印到屏幕上

我对测试活动有基本的了解,但考虑到这个活动在很大程度上依赖于服务和其他对象,我不确定如何开始测试它。理想情况下,该服务也将在测试期间设置为仅返回我预定义的数据。

0 投票
4 回答
3660 浏览

c - 如何告诉 gcc 在代码的每一行调用我自己的函数来检测代码?

例如,有来源:

它应该编译为:

当然,my_special_debugging_function 应该可以使用backtrace函数。

有 gcc 的选项吗?或者是否有工具可以在源代码级别执行此操作?(例如,用我的函数生成其他 C 源代码)

@related 如何用我的字符串“交错”C/C++ 源代码(仅在适当位置的函数内部)?

@related 我应该使用什么分析器来测量在这个函数中花费的_real_时间(包括等待系统调用),而不是_CPU_一个

0 投票
3 回答
15787 浏览

java - 计算 Java 对象的字节大小

我正在计算 java 对象 [hashmap] 的大小 [memory used] 。它包含 [在运行时] 不同数据类型的元素,因此 [ no-of-elem * size-of-element] 不是一个好的方法。现在的代码是通过一系列的

但是,此过程是 CPU 占用且效率低下。

我正在考虑以下两种方法:

  1. 将对象序列化到缓冲区并获取大小。
  2. 查看 java.lang.instrument 以获取大小

我正在寻找任何人在性能、效率、扩展等方面有这些方法的经验,或者如果你知道任何更好的方法。

PS:这是我正在构建的后台实用程序,因此大小不需要非常准确,尽管它应该是正确的。所以我愿意用准确性来换取性能

我对 deep-size 不感兴趣 [不会计算此对象引用的对象的大小。]

我正在寻找性能比较并了解 getObjectSize() 如何在内部工作..这样我就不会弄乱其他东西来提高性能

谢谢

0 投票
3 回答
1131 浏览

c - 如何将 C/C++ 源代码与我的字符串“交错”(仅在适当位置的函数内部)?

例如,有来源:

它应该转换为:

即在语句可以的每一行的末尾插入“MYMACRO\n”,仅在函数内部。

如何轻松做到?我应该使用正则表达式吗?我应该使用什么工具?

例如,gcc 可以在函数内部输出所有语句开始(或结束)的所有行号吗?

@related 如何告诉 gcc 通过调用我自己的函数来检测代码的每一行代码?

@related 我应该使用什么分析器来测量在这个函数中花费的_real_时间(包括等待系统调用),而不是_CPU_一个

0 投票
1 回答
355 浏览

java - 仪器仪表

我是 ASM(字节码操作工具包)的新手,正在使用它来检测 java 字节码。我想访问一个类的方法并使用 ASM 更改它们的访问修饰符。有人知道如何实现这一目标吗?我知道调用 visitMethod 会有所帮助,但不知道如何准确地做到这一点任何关于此的信息都会有所帮助。谢谢你。

0 投票
1 回答
1205 浏览

c++ - GPIB 与 Qt 的接口

我想知道是否可以通过使用 C++ 和 Qt 与 GPIB Instruments 进行交互。如果可能的话,谁能告诉我它有多容易和/或为我指明一个教程或示例的方向?

非常感谢。

0 投票
3 回答
729 浏览

java - 在 Java 中断言同步顺序

在高度并发的系统中,很难确信您对锁的使用是正确的。具体来说,如果在另一个线程中以正确的顺序获取锁时,如果以非预期的顺序获取锁,则可能导致死锁。

有一些工具(例如 Coverity)可以对代码库进行静态分析并寻找“不寻常的”锁定顺序。我想探索其他选项来满足我的需求。

是否有任何用于检测 Java 代码的轻量级*工具,可以检测以非预期顺序获取锁的情况?我可以通过注释/注释明确调用锁定命令。

首选免费和/或开源解决方案。如果有解决此问题的非仪器方法,也请发表评论。

* 就我而言,轻量级意味着...

  • 如果是仪表,我仍然可以以相同的性能运行我的程序。我想 30-50% 的降级是可以接受的。
  • 我不必花半天时间与该工具进行交互来获得“好的”。理想情况下,我应该只在出现问题时才注意到我正在使用它。
  • 如果是仪表,那么在生产环境中应该很容易禁用。
  • synchronize它不应该在每条语句中都弄乱我的代码。如前所述,我可以明确地注释/注释被相对顺序锁定的对象或对象类。
0 投票
2 回答
6536 浏览

android - 为什么没有广播接收器的测试工具?

也许我错过了一些东西。我想为 BroadcastReceiver 编写测试用例;具体来说,它用于接收BOOT_COMPLETED事件并设置警报以供另一个接收器稍后处理;它似乎没有正确设置它,但关键是我没有明显的方法来测试它。我不能完全附加调试器并等待 BOOT_COMPLETED,也不能发送虚假的 BOOT_COMPLETED 广播。

为什么有 Activity、Service 和 Provider 的检测类,但没有 BroadcastReceiver?对此有什么建议吗?

0 投票
5 回答
1362 浏览

java - 检测 System.setProperty 方法调用

我在这里面临一个难题。

我开发的应用程序之一是加载 JAXP 的DocumentBuilderFactory类的错误实现。这种行为后来被推断是由不同团队/公司构建的不同应用程序中的另一个类引起的。所述类在加载时更改了首选的 DocumentBuilderFactory 类,包括一个类似于下面的静态块:

如果通过DocumentBuilderFactory.newInstance方法的 Javadocs,很明显,当调用 newInstance 方法时,上述代码负责更改返回给所有应用程序的解析器实现。

应用了一个补丁,纠正了这个问题,但它让我问这个问题——如何确定哪个类在运行时执行 System.setProperty 调用?

我们已经生成了一个自定义构建的 OpenJDK,其中包含一个修改过的 System 类,该类负责找出罪魁祸首,原因很简单,因为我们无法访问服务器上部署的所有应用程序的所有源。但这之所以成为可能,是因为生产环境是完全复制的。因此,这个问题也可以解释为—— 在生产环境中,如何确定哪个类在运行时执行 System.setProperty 调用?