问题标签 [native]
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 - 在 Java 中分析本机方法 - 奇怪的结果
我一直在使用 Yourkit 8.0 分析在 Mac OS X(10.5.7,Apple JDK 1.6.0_06-b06-57)下运行的数学密集型应用程序,并注意到 CPU 分析结果中有一些奇怪的行为。
例如 - 我使用采样进行了分析运行,它报告应用程序的 10 分钟运行时间中有 40% 用于 StrictMath.atan 方法。我发现这令人费解,但我相信了它的话,并花了一些时间用极其简单的多项式拟合替换 atan。
当我再次运行该应用程序时,它所用的时间几乎与以前完全相同(10 分钟) - 但我的 atan 替换在分析结果中没有出现。相反,其他主要热点的运行时间百分比只是增加了以弥补它。
总结一下:
StrictMath.atan 的结果(本机方法)
总运行时间:10 分钟
方法 1:20%
方法 2:20%
方法 3:20%
StrictMath.atan:40%
结果使用简化的纯 Java atan
总运行时间:10 分钟
方法 1:33%
方法 2:33%
方法 3:33%
(方法 1,2,3 不执行任何 atan 调用)
知道这种行为是怎么回事吗?我使用 EJ-Technologies 的 JProfiler 得到了相同的结果。似乎 JDK 分析 API 报告了本机方法的不准确结果,至少在 OS X 下是这样。
javascript - 是否有 JavaScript 的本机机器代码编译器?
是否有 JavaScript 的本机机器代码编译器?我不是在谈论虚拟机。如果不存在可以做吗?
由于语言的动态特性,我想知道它是否可以编译为二进制。
java - 在 Eclipse 中使用 Java VM 的本机线程
我想运行一个使用 Thread 类的 Java 程序,这样每个 Thread.run() 都会导致运行一个正确的内核线程。有没有办法通过将一些命令行参数传递给 Java VM 来实现这一点?我在 Windows 机器上使用 Java 1.5 SDK(和 jre1.5.0_18)运行 Eclipse。我尝试使用 -XX:+UseBoundThreads,但任务管理器似乎在同一个内核上运行两个线程(我使用的是双核机器)(另一个内核空闲)。
谢谢。
java - 如何在 JNA 中映射枚举
我有以下枚举我如何在 jna 中映射?
这个枚举在结构中被进一步引用。
阿卜杜勒哈利克
iphone - 提前编译的代码和本机编译的代码有什么区别
在 Miguel de Icaza 的一些关于使用 mono 为 iphone 制作应用程序的文章中,我遇到了提前 (aot) 编译。听起来结果是本机代码。是这样还是有什么区别?
firefox-addon - Firefox 扩展:本机代码执行?
是否可以编写一个运行本机、平台相关代码的扩展?我是一个扩展新手(多么好的一句话!):),你能指点我关于这个主题的好材料吗?(提供给 Google 的好关键字就足够了)
编辑:我开始检查 Gecko SDK,这是一个相当大的主题,我不确定这是我想要的。
我会很高兴有一本友好的手册(这不是原始参考,而是一些关于如何制作利用 XPCOM 的扩展的教程(如果是这样的话)。好的关键字仍然受到赞赏。
c++ - 以编程方式连接到无线网络
我正在尝试在 Windows XP 上编写一个自动连接到我公司无线网络的应用程序。
我找到了无线局域网 API,但它需要我在机器上安装一些修补程序,并且你需要有 sp2 或更高版本(有 SP1 的机器,我需要支持任何 XP 机器)。
我试图在 MSDN 上找到一些关于无线零配置的示例,但没有运气,我发现的只有 WinCE 的示例,我认为微软停止支持它。此外,我找不到在哪里下载用于 WZC 的 dll 和头文件。
必须有办法做到这一点并在任何服务包上工作,因为我找到了 ENGL 的 Zwlancfg
.net - .NET MenuStrip 与本机 Windows 渲染器?
有谁知道如何根据用户使用的操作系统版本让 MenuStrips 以原生 Windows 外观呈现?
当前的渲染不这样做...
我目前正在使用可以做到这一点的第三方控件,但使用 MainMenu 和 ContextMenu 而不是我正在寻找的,MenuStrip ...
winapi - 如何读取调用堆栈?
我们有一个通过 COM+ 在 Windows 2003 服务器上运行的本机 C++ 应用程序。我最近从事件查看器中注意到它抛出异常,特别是 C0000005 异常,根据http://blogs.msdn.com/calvin_hsia/archive/2004/06/30/170344.aspx表示该过程正在尝试写入不在其地址空间内的内存,也就是访问冲突。
事件查看器中的条目提供了一个调用堆栈:
LibFmwk!UTIL_GetDateFromLogByDayDirectory(char const *,class utilCDate &) + 0xa26c LibFmwk!UTIL_GetDateFromLogByDayDirectory(char const *,class utilCDate &) + 0x8af4 LibFmwk!UTIL_GetDateFromLogByDayDirectory(char const *,class utilCDate &) + 0x13a1 LibFmwk:::! )const + 0x1070 LibFmwk!utilCLogController::GetFLFInfoLevel(void)const + 0x186
现在,我知道它给了我要查看的方法名称,但我感觉每行末尾的地址(例如 + 0xa26c)试图将我指向该方法中的特定行或指令。
所以我的问题是:
- 有谁知道我如何使用这个地址或调用堆栈中的任何其他信息来确定代码中的哪一行?
- 有没有我可以阅读以更好地理解调用堆栈的资源,
- 是否有任何免费软件/开源工具可以帮助分析调用堆栈,可能通过附加到调试符号文件和/或二进制文件?
编辑:根据要求,这是似乎导致问题的方法:
}
这是我们公司的一位成员在 10 多年前编写的代码,他早已离开,所以我不认为确切知道这是在做什么,但我确实知道它涉及从“今天”重命名日志目录的过程' 到特定日期,例如 %20090329。数组索引、memcpy 和运算符的地址确实使它看起来相当可疑。
我们似乎遇到的另一个问题是,这只发生在生产系统上,我们永远无法在我们的测试系统或开发系统上重现它,这将允许我们附加调试器。
非常感激!安迪
sql-server - SQL Server 2005 native stored procedures
Can i write a C or native C++ stored procedures for SQL Server?
Thanks.