Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/188.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android上的番石榴拆分器需要1.7秒才能初始化?_Java_Android_Performance_Guava_Lag - Fatal编程技术网

Java Android上的番石榴拆分器需要1.7秒才能初始化?

Java Android上的番石榴拆分器需要1.7秒才能初始化?,java,android,performance,guava,lag,Java,Android,Performance,Guava,Lag,我正在调查一个滞后现象,它发生在我的android应用程序的第一次触摸输入之后。我使用TraceView并追踪到了番石榴拆分器初始化的~2秒延迟 为什么要花这么长时间 我是否正确读取TraceView的输出 我能做些什么 这是调用拆分器的行: String desc = /* loaded from assets */ List<String> descList = Lists.newArrayList(Splitter.on("\n").split(desc)); Stri

我正在调查一个滞后现象,它发生在我的android应用程序的第一次触摸输入之后。我使用TraceView并追踪到了番石榴
拆分器初始化的~2秒延迟

  • 为什么要花这么长时间
  • 我是否正确读取TraceView的输出
  • 我能做些什么
这是调用拆分器的行:

String desc = /* loaded from assets */
List<String> descList = Lists.newArrayList(Splitter.on("\n").split(desc));
String desc=/*从资产加载*/
List descList=Lists.newArrayList(Splitter.on(“\n”).split(desc));

我认为这可能与和有关,因为在构造拆分器时需要构造一个字符匹配器。正如您在TraceView中所看到的,很多时间都花在了
CharMatcher.
(clinit=class初始化)上


您使用的是哪种版本的番石榴?

…以及您使用的拆分器代码是什么?您显然正确地阅读了Traceview。至于为什么和怎么做的问题,这需要一个Guava专家。一个将文本文件从资产加载到字符串中的助手。字符串大约50个字符长,根据TraceView,对my helper的调用不到1ms。还有,在第一个Splitter.on()之后,对它的后续调用也很快。为什么不使用
Splitter.on('\n')
而不是
Splitter.on(“\n”)
?@LouisWasserman,爱你的人,但是你必须承认这个技巧有点毫无用处:-)对不起。Fabian,你能告诉我们当你切换到14.0-rc2时你看到了什么吗?相关问题被认为已解决。使用14.0-rc1和-rc2解决。谢谢