在我的多线程应用程序中,我看到其中存在严重的锁争用,从而阻碍了跨多个核的良好可伸缩性.我决定使用无锁编程来解决这个问题.
如何编写无锁结构?
我有一个传统的C++模块,使用openssl库(DES加密)提供加密/解密.我正在尝试将该代码转换为java,我不想依赖DLL,JNI等... C++代码如下所示:
des_string_to_key(reinterpret_cast<const char *>(key1), &initkey);
des_string_to_key(reinterpret_cast<const char *>(key2), &key);
key_sched(&key, ks);
// ...
des_ncbc_encrypt(reinterpret_cast<const unsigned char *>(tmp.c_str()),
reinterpret_cast< unsigned char *>(encrypted_buffer), tmp.length(), ks, &initkey,
DES_ENCRYPT);
return base64(reinterpret_cast<const unsigned char *>(encrypted_buffer), strlen(encrypted_buffer));
Run Code Online (Sandbox Code Playgroud)
Java代码如下所示:
Cipher ecipher;
try {
ecipher = Cipher.getInstance("DES");
SecretKeySpec keySpec = new SecretKeySpec(key, "DES");
ecipher.init(Cipher.ENCRYPT_MODE, keySpec);
byte[] utf8 = password.getBytes("UTF8");
byte[] enc = ecipher.doFinal(utf8);
return new sun.misc.BASE64Encoder().encode(enc);
}
catch {
// ...
}
Run Code Online (Sandbox Code Playgroud)
所以我可以很容易地在Java中进行DES加密,但是如何使用完全不同的方法获得与上述代码相同的结果?让我烦恼的是,C++版本使用2个密钥,而Java版本只使用1个密钥.在CBC模式下关于DES的答案非常令人满意,但我还不能让它工作.以下是有关原始代码的更多详细信息:unsigned char key1 [10] = {0}; unsigned char key2 [50] = {0};
int i;
for …Run Code Online (Sandbox Code Playgroud) 我已经开始将一个项目转换为Moose,我注意到的第一件事就是我的批评/整洁测试下地狱了.Moose,Tidy和Critic似乎并不像以前那样喜欢对方.
是否有关于如何使批评/整理更加欣赏穆斯方言的文档?大多数Moose用户做什么?放松/放弃批评更重的Moose模块?自定义政策?
我有一个Cocoa应用程序,它使用WebView来显示HTML界面.我如何从HTML界面中的Javascript函数调用Objective-C方法?
任何人在VM上运行Jira有成功或失败吗?
我正在设置一个新的源代码控制和缺陷跟踪服务器.我的服务器机房已接近满,我的服务组建议使用VM.我看到很多人在VM上运行SVN(包括NCSA).VM还可以解除我的硬件问题并为我提供高可用性.最后,它让我摆脱了一些繁文缛节,可以更快地实现.
那么,有没有人知道为什么我不应该把Jira放在VM上?
谢谢
我正在尝试创建一个用于Apache Tomcat 6的自签名证书.我可以制作的每个证书都会导致浏览器连接到AES-128.客户希望我证明我可以在AES-256上创建连接.
我试过java的keytool和openssl.我尝试了各种参数,但似乎无法指定密钥大小,只是签名大小.
如何让browser-tomcat连接将AES-256与自签名证书一起使用?
在VB.net中发布http get的最佳方法是什么?我想得到一个请求的结果,如http://api.hostip.info/?ip=68.180.206.184
基于"在Python中用空格分割字符串",它使用shlex.split智能地分割带引号的字符串,我将有兴趣听到非显而易见的标准库函数解决的其他常见任务.
如果这变成了本周的模块,那也没关系.
我有一个源自ANTLR Parser Generator for Java的AST.我想要做的是以某种方式构建源代码的控制流图,其中每个语句或表达式是唯一的节点.我知道必须有一些这种识别的递归,我想知道你会建议什么是最好的选择,如果ANTLR有一个工具集我可以用于这项工作.干杯,克里斯
编辑 - 我主要关心的是从AST获得控制流图(CFG).这样我就可以获得源代码的树形表示.为了澄清,源代码和实现语言都是Java.
java ×2
.net ×1
aes ×1
c# ×1
cocoa ×1
control-flow ×1
encryption ×1
http-get ×1
javascript ×1
jira ×1
lock-free ×1
moose ×1
multicore ×1
objective-c ×1
odbc ×1
openssl ×1
parsing ×1
perl ×1
perl-critic ×1
perl-tidy ×1
python ×1
ssl ×1
tomcat ×1
vb.net ×1
webkit ×1