小编dro*_*del的帖子

轻量级Groovy持久性

Groovy中持久化的一些轻量级选项有哪些?到目前为止,我已经考虑过序列化和XML,但我想要比那些更强大的东西,至少所以我不必每次都重写整个文件.理想情况下,它会:

  • 在类路径中不需要JAR,而是使用Grapes
  • 不需要外部流程,管理或身份验证(因此全部嵌入)
  • 支持锁定

我打算用它来在一个独立的Groovy脚本的运行之间缓存一些信息.我想回应将集中在SQL和NoSQL数据库.显示此用法的页面的链接将不胜感激.谢谢!

database groovy persistence

11
推荐指数
2
解决办法
3416
查看次数

什么是线程安全的ByteArrayOutputStream?

我想从进程的输出和错误流中读取并将它们合并为一个文本流.我的程序是groovy,如下所示:

def mergeStream = new ByteArrayOutputStream()
process.waitForProcessOutput(mergeStream, mergeStream)
Run Code Online (Sandbox Code Playgroud)

问题是ByteArrayOutputStream不是线程安全的,而waitForProcessOutput()生成两个附加到mergeStream的线程.我可以使用线程安全的变体吗?你怎么建议我控制对mergeStream的访问?看起来在实践中,有时会使用此实现删除字符.

java groovy

8
推荐指数
1
解决办法
1951
查看次数

如何使用copy-on-write最小化c ++程序的内存消耗?

我正在开发一个应用程序,它可以自行调整8次并行性.每个fork都有一个fork的时候原始进程的内存空间的完整副本.这些分支很快,因为Linux在进程之间共享页面,只在修改它们时才创建新的分页.在实践中,内存消耗的增长似乎是我应用程序的3倍左右.是否有任何关于工具或技术的建议,用于识别可以减少增长的变化?

一种想法是查看修改页面的页面碎片.还有一种强力检查分叉过程中分配的内容.在任何一种情况下,您可以推荐哪些技术或工具来执行分析?

请记住,即使使用并行性,该程序也需要几个小时才能完成,并且内存占用量高达1TB,因此仪器选项有限.

c++ linux memory optimization profiling

8
推荐指数
1
解决办法
292
查看次数

为什么我的父进程在退出之前看不到子进程的输出?

请考虑以下脚本:

use IO::File;
$| = 1;
my ($handle, $pid) = myPipe();
if ($pid == 0) {
  print "$$";
  sleep 5;
  exit;
}

print "child: ".<$handle>."\n";

sub myPipe {
  my $handle = new IO::File();
  my $pid = open($handle, "-|");
  return ($handle, $pid);
}
Run Code Online (Sandbox Code Playgroud)

在这种情况下,进程启动后5秒内不会出现"child:"消息.如果我从分叉的孩子中删除睡眠呼叫,则立即打印.为什么分叉的孩子必须退出管道以冲洗父母?

perl ipc

7
推荐指数
1
解决办法
2329
查看次数

奇怪的Groovy/Java String比较行为

请考虑以下脚本:

def a = new HashSet()
def str1 = "str1"
def str2 = "str2"
def b = "$str1-$str2"
def c = "str1-str2"
println "b: $b"
println "c: $c"
println "b.equals(c): " + (b.equals(c))
println "b == c: " + (b == c)
println "b.compareTo(c): " + (b.compareTo(c))

a.add(b)
println "a.contains(c): " + a.contains(c)
Run Code Online (Sandbox Code Playgroud)

使用Groovy 1.8和JDK 1.6.0_14运行时,其输出如下:

b: str1-str2                                                                                                               
c: str1-str2
b.equals(c): false
b == c: true
b.compareTo(c): 0
a.contains(c): false
Run Code Online (Sandbox Code Playgroud)

两个字符串"b"和"c"打印相同的字符序列,但是b.equals(c)是假的.根据JDK 1.6手册,equals()函数应该返回:

将此字符串与指定的对象进行比较.当且仅当参数不为null并且是表示与此对象相同的字符序列的String对象时,结果才为真.

为什么equals()不会返回上面记录和演示的值?奇怪的是,compareTo()返回0!

java groovy

7
推荐指数
1
解决办法
1万
查看次数

我如何在Groovy中获得类似匿名内部类的东西?

如何在Groovy中定义匿名内部类?我看到了他们应该在Groovy 1.7中支持的引用,我使用的是1.8.

 thread = process.consumeProcessOutput(
   new Appendable() {
     Appendable append(char c) {
       app1.append(c)
       app2.append(c)
       return this
     }

     Appendable append(CharSequence csq) {
       app1.append(csq)
       app2.append(csq)
       return this
     }

     Appendable append(CharSequence csq, int start, int end) {
       app1.append(csq, start, end)
       app2.append(csq, start, end)
       return this
     }
   })
Run Code Online (Sandbox Code Playgroud)

我用这段代码得到一个例外:

Caught: groovy.lang.MissingMethodException: No signature of method: java.lang.UNIXProcess.consumeProcessOutput() is applicable for argument types: (MyClass$1) values: [MyClass$1@19c8ef56]
Run Code Online (Sandbox Code Playgroud)

groovy

7
推荐指数
2
解决办法
7152
查看次数

如何判断我是否正在使用GOLD链接器?

我小组中的其他人为我的团队制作了LD.如何判断它是否使用--enable-gold构建?

gcc

7
推荐指数
1
解决办法
2879
查看次数

如何禁用Groovy访问器的生成?

Groovy Beans很棒,但我很好奇是否可以声明一个类成员私有而不能轻易生成访问器?http://groovy.codehaus.org/Groovy+Beans>Groovy Beans页面未涵盖此主题.我唯一能想到的就是定义访问器并将它们设为私有.

groovy

6
推荐指数
1
解决办法
380
查看次数

我如何获得git手册条目?

我下载了Git源代码并将其安装在非标准路径中.所有的Git选项都有一个-h选项,但是那里列出的文档非常简洁,缺少许多选项.我想要完整的文档但无法找到它.当我运行git help loggit log --help我收到以下错误:

No manual entry for git-log
Run Code Online (Sandbox Code Playgroud)

我已经尝试添加所有可以想到的路径PATH,MANPATH但它没有好处,我仍然得到这些讨厌的错误.我怎么git <option> --help去上班?

git

6
推荐指数
1
解决办法
2752
查看次数

oneAPI 是什么?它与 TBB 相比如何?

我们已经使用 TBB 多年了,我发现在升级时,我们现在被带到了 oneAPI TBB 页面。oneAPI TBB是否会取代传统TBB?两个版本都得到维护还是独立的 TBB 现已弃用?

尝试确定要迁移到哪个。在我看来,oneAPI TBB 取代了 TBB,因为 TBB 页面自去年以来就没有更新过,但我无法轻易判断。

同样让我困惑的是,在 include 目录中,同时存在 tbb/tbb.h 和 oneapi/tbb/tbb.h ,并且两者都有相同的文件。它们相同吗?我不知道该用哪个。

c++ tbb intel-oneapi

6
推荐指数
1
解决办法
1499
查看次数

标签 统计

groovy ×5

c++ ×2

java ×2

database ×1

gcc ×1

git ×1

intel-oneapi ×1

ipc ×1

linux ×1

memory ×1

optimization ×1

perl ×1

persistence ×1

profiling ×1

tbb ×1