场景:使用jna获取c的Point图片数据,并通过多线程的方式传递pointer保存图片数据
报错:最底层抛出为jna的native.read
具体原因:未分析出
临时解决方案:对数据的保存不使用多线程,直接接收到之后直接保存,然后再用线程执行其他逻辑,但是如果图片太大保存太久,很容易引起阻塞
后续优化方案:考虑到可能是传递Pointer的时候有异常,可以直接获取到数据之后直接转换为图片byte[]数组,然后通过传递此数组到线程去保存数据,这样可以减少图片保存的时间(未验证是否可行)
后续方案已验证可行20180709