来自util :: ResourceMarkers的addMessageMarkers非常慢

时间:2015-05-28 09:03:05

标签: rascal

util :: ResourceMarkers 中的方法 addMessageMarkers 非常慢;添加一条消息可能需要几秒钟。

将Java项目HelloWorld与一个Java文件一起使用:

public class HelloWorld
{
   public static void main(String[] args) {
     int i = 42;
     System.out.println("Hello World! with value: "+i);
   }
}

首先做

import util::ResourceMarkers;

然后运行

addMessageMarkers({error("numLiteral, value:42",|project://HelloWorld/HelloWorld.java|(83,2,<4,10>,<4,12>))});

需要7到8秒。

请注意,当我们将位置更改为不存在的位置时,例如

addMessageMarkers({error("numLiteral, value:42",|file://dummy.java|(83,2,<4,10>,<4,12>))});

然后它运行得更快,没有任何警告。

所以,我有两个问题:

  • 1。为什么 addMessageMarkers()运行得如此之慢,我可以更改某些内容以使其运行得更快吗?
  • 2。 addMessageMarkers()是否可以返回无法添加的消息。

顺便说一句,昨天我发布了一个问题如何构建一致的位置?,动机是我想用更多(正确的)消息测试 addMessageMarker 。当传递更多消息时,运行时间也会增加,我还没有准确的数据。

0 个答案:

没有答案
相关问题