lwy1314 发表于 2022-9-25 13:24:55

简单列表框 循环插入项目直接崩溃


多个线程 循环插入项目 导致崩溃

第一个错误:
java.lang.NullPointerException: Attempt to invoke virtual method '长整数 java.lang.Long.longValue()' on a null object reference
<D:\win_android\win_android\plugins\vprj_android\classlib\sys\android\base\a_ctrl_adapter.v>, 53: 错误: 位于 hsh.anzh.jb.适配器基础类.getItemId
<D:\win_android\win_android\plugins\vprj_android\classlib\sys\android\base\a_win.v>, 253: 错误: 位于 hsh.anzh.jb.窗口.dispatchTouchEvent

第二个错误:
java.lang.IllegalStateException: The content of the adapter has changed but ListView did not receive a notification. Make sure the content of your adapter is not modified from a background thread, but only from the UI thread. Make sure your adapter calls notifyDataSetChanged() when its content changes.
<D:\win_android\win_android\plugins\vprj_android\classlib\sys\android\base\a_win.v>, 253: 错误: 位于 hsh.anzh.jb.窗口.dispatchTouchEvent

安卓的感觉太不稳定了,很容易崩溃掉,注释也是云雾缭绕 很随意很多没有启示意义 ,似乎有劝返的意图,要么急有所成

创世魂 发表于 2022-9-25 13:43:19

因为你的用法不对,你也补贴代码,不上传一个测试例子。。
用法不对自然就崩了。。

lwy1314 发表于 2022-9-25 14:03:26

本帖最后由 lwy1314 于 2022-9-25 14:09 编辑


编辑框的内容分割成数组,有几个数组成员 就创建几条线程来调用这个方法,最后简单列表框插入项目中就崩溃掉了

fan15500 发表于 2022-9-25 14:08:47

如果你用多线程来操作组件,那崩溃是非常正常的。

lwy1314 发表于 2022-9-25 14:12:49

fan15500 发表于 2022-9-25 14:08
如果你用多线程来操作组件,那崩溃是非常正常的。

不直接操作组件,使用保存读取方法吗

fan15500 发表于 2022-9-25 14:22:24

lwy1314 发表于 2022-9-25 14:12
不直接操作组件,使用保存读取方法吗

一般多线程操作同一个东西,就可能会争抢。所以 你要么分开,最后和一起。要么加锁。等一个操作完再弄另一个。如果你的数据量不是很大,其实单线程就够了。

lwy1314 发表于 2022-9-25 14:53:07

单线程插入项目也是崩溃,大概加载不到200行的项目数 就崩溃了

创世魂 发表于 2022-9-25 20:45:03

lwy1314 发表于 2022-9-25 14:53
单线程插入项目也是崩溃,大概加载不到200行的项目数 就崩溃了

发例子出来,给你改改。
页: [1]
查看完整版本: 简单列表框 循环插入项目直接崩溃