想象一个Web应用程序,它使用自定义键盘事件处理程序,可能会进行事件冒泡或事件捕获.
有没有办法(例如Firefox/Firebug插件)调试每个击键/键盘事件,如:
澄清我的问题:我不知道哪些方法处理程序存在以及它们的定义位置 - 这就是我想要找到的.
ibm jdk 5(在Solaris/SPARC和Linux/x64上)是否已宣布生命终止/支持终止日期?
想象两个服务器(每个服务器在一个自己的jvm进程中)使用某种形式的消息进行通信(例如简单的生产者/消费者)
我想编写单元测试来测试这两个服务器的行为.
我的问题是:
这个问题是否有一些框架(或junit插件)?
我想在不同的进程中运行junit测试类(甚至是单个测试)?如果一个单元测试可以使用某种进程间通信轻松访问另一个测试的变量(在不同的进程中),那将会很酷.
例如,我想检查生产者是否真的生产了我预期的东西,然后,如果消费者消费它们.(也许做一些模糊测试来发现一些与种族有关的问题)
这种测试有一些最佳实践吗?
如果没有类似于单元的测试方法,那么在连续集成期间如何测试这些东西呢?
注意:
我不想使用线程,因为这可能会改变行为(如果你想到线程安全问题)
想象一下同步 Collection:
Set s = Collections.synchronizedSet(new HashSet())
Run Code Online (Sandbox Code Playgroud)
克隆此Collection的最佳方法是什么?
它首选克隆不需要在原始Collection上进行任何同步,但要求迭代克隆的Collection不需要在原始Collection上进行任何同步.
我正在使用Oracle JDBC驱动程序并评估BoneCP.两者都实现了语句缓存.
我问自己是否应该使用一个或另一个进行语句缓存.你怎么看?每种方式有哪些优点或缺点?
使用时Java Attach API,我在Linux上遇到以下链接错误(仅在不同的机器上试过):
Exception in thread "main" java.lang.UnsatisfiedLinkError: sun.tools.attach.WindowsAttachProvider.tempPath()Ljava/lang/String;
at sun.tools.attach.WindowsAttachProvider.tempPath(Native Method)
at sun.tools.attach.WindowsAttachProvider.isTempPathSecure(WindowsAttachProvider.java:74)
at sun.tools.attach.WindowsAttachProvider.listVirtualMachines(WindowsAttachProvider.java:58)
at com.sun.tools.attach.VirtualMachine.list(VirtualMachine.java:134)
at sun.tools.jconsole.LocalVirtualMachine.getAttachableVMs(LocalVirtualMachine.java:151)
at sun.tools.jconsole.LocalVirtualMachine.getAllVirtualMachines(LocalVirtualMachine.java:110)
...
Run Code Online (Sandbox Code Playgroud)
有趣的是,在Solaris和Windows上,它开箱即用.
我尝试了几种指定的组合java.library.path指向包含libattach.so但没有运气的目录.
这有什么不对?
作为一个额外的问题:
有没有办法看到哪个本地库实际上绑定到java类?
考虑您想要使用包含以下方法签名来模拟接口:Mockito
public void doThis(Object o);
public void doThis(Object... o)
Run Code Online (Sandbox Code Playgroud)
我需要验证(doThis(Object o)而不是其他方法)是否已被调用一次。
首先,我认为下面的行可以解决问题:
verify(mock, times(1)).doThis(anyObject());
Run Code Online (Sandbox Code Playgroud)
doThis然而,这似乎在 Windows 上有效,但在 Linux 上却不起作用,因为在这种环境中,需要调用其他方法。
这是因为anyObject()参数似乎与两个方法签名都匹配,并且以或多或少不可预测的方式选择了一个方法签名。
如何强制Mockito 始终选择doThis(Object o)进行验证?
在2012年,创建了一个JEP 145,以便在java中
缓存已编译的本机代码,以便更快地启动jvm.
那时,它已经正式宣布.
但是,JEP 145不再存在.
这是怎么回事?这个想法听起来很棒.
我找不到官方声明,为什么以及何时取消该项目.
我正在使用Oracle Database 11.2。我遇到的情况是我FLASHBACK DATABASE经常发布。似乎一个FLASHBACK DATABASE周期会重新启动数据库实例,这大约需要花费大约30%的时间。我的设置需要7秒。
数据库很小(〜1 GB表空间),所有文件应位于I / O缓存/缓冲区中。因此,我认为瓶颈不是基于I / O的。
我正在寻找调整建议,以节省执行闪回的用户时间和/或CPU时间。
更新:
闪回序列(以及每个步骤的时序)如下:
1. Get SYSDBA connection with prelim_auth=true [15 ms]
2. SHUTDOWN ABORT; [1034 ms]
3. STARTUP (unrestricted) [1241 ms]
4. Close SYSDBA connection [2 ms]
5. Get SYSDBA connection with prelim_auth=false [18 ms]
6. ALTER DATABASE MOUNT [4073 ms]
7. FLASHBACK DATABASE TO RESTORE POINT <restore_point_name> [306 ms]
8. ALTER DATABASE OPEN RESETLOGS [1652 ms]
9. CLOSE SYSDBA connection [2 ms]
Run Code Online (Sandbox Code Playgroud) java ×8
performance ×3
jdbc ×2
oracle ×2
architecture ×1
bonecp ×1
browser ×1
collections ×1
database ×1
debugging ×1
ecj ×1
eclipse ×1
firefox ×1
flashback ×1
javascript ×1
jit ×1
junit ×1
jvmti ×1
linux ×1
mockito ×1
openjdk ×1
optimization ×1
synchronized ×1
unit-testing ×1
upgrade ×1