相关疑难解决方法(0)

简单的Java Map/Reduce框架

任何人都可以指向一个简单的,开源的Map/Reduce框架/ API for Java?似乎没有太多证据证明存在这样的事情,但其他人可能知道不同.

当然,我能找到的最好的是Hadoop MapReduce,但这不符合"简单"标准.我不需要运行分布式作业的能力,只需要让我在一个JVM中使用标准Java5风格的并发在多核机器上运行map/reduce-style作业.

写自己并不难,但我宁愿不必这么做.

java mapreduce

49
推荐指数
6
解决办法
3万
查看次数

使用线程在java中绘制面板

我正在编写一个包含许多不同视图的程序.其中一个是相当图形密集型(它显示一个互连的图形).其他人只是展示小而复杂的图表.

我发现主视图的绘制时间很长(甚至只绘制当前可见的区域),并且在绘制时,界面的其余部分变得非常慢.

我的问题是,我可以创建一个新线程来处理绘画 - 如果是这样,它会导致性能提升,我怀疑它不会.我尝试过以下方法:

创建一个抽象类ThreadPaintablePanel,我的复杂视图继承自.

public abstract class ThreadPaintablePanel extends JPanel{
 private Thread painter;
 public abstract void paintThread(Graphics g);

 protected void callPaintThread(Graphics g){
   if(painter != null){
     painter.interrupt();
   }
   painter = new Thread(new PaintRunnable(this, g));
   painter.start();
 }
} 
Run Code Online (Sandbox Code Playgroud)

然后在我复杂的视图中我的paintComponent方法很简单:super.callPaintThread(g);

重写的paintThread方法包含我的所有绘画代码.然而,这会导致未上漆的面板.我错过了一些明显的事吗?

谢谢

java swing multithreading paint

2
推荐指数
1
解决办法
2882
查看次数

标签 统计

java ×2

mapreduce ×1

multithreading ×1

paint ×1

swing ×1