我在一个使用Ubuntu的功能强大的多核服务器上运行c++代码时遇到了问题。问题是我的应用程序只使用了不到10%的cpu。但在我的i3笔记本电脑上,同样的应用程序使用了大约100%的cpu,而我的笔记本电脑使用的是不同版本的Ubuntu。
我的操作系统:
Linux version 3.11.0-23-generic (buildd@batsu) (gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) ) #40~precise1-Ubuntu SMP Wed Jun 4 22:06:36 UTC 2014
服务器的操作系统:
Linux versi
我有一个类(/lib/updater.rb),它对数据库进行大规模更新(调用外部服务器、计算、.)。通常,此任务由服务器的cron调用(启动updater.rb的updater.rb),但我也希望有机会从客户端手动启动它。
此时,用户可以从客户端单击按钮并以如下方式启动:
# the controller
Thread.new {
Updater.start
}
这是一个很好的解决方案,还是直接从rake任务启动更好?
# something like this from the controller
Rake::Task[params[:task]].reenable
Rake::Ta
我试图将一个大列表分成两个任务,然后执行一些处理,然后将它们合并。在下面的测试中,我发现串行处理比并行(或)更快,我是不是做错了什么。以下是结果,
sh-4.3$ java -Xmx128M -Xms16M FutureTaskDemo
I =2
Sequential Result : 2000000 calculated in 2339 ms
First Value:2 List Value:2000001
Initial List First Value:2 List Value:2000001