java
文章平均质量分 62
xiaomaomixj
这个作者很懒,什么都没留下…
展开
-
js sse所需要的返回值类型--类型不正确的异常(There was an unexpected error (type=Not Acceptable, status=406))
js sse所需要的返回值类型--类型不正确的异常(There was an unexpected error (type=Not Acceptable, status=406))原创 2023-08-10 16:34:59 · 406 阅读 · 1 评论 -
wenflux为什么使用transferTo上传文件没反应(解决)及用webflux的webclient进行文件上传
【代码】wenflux为什么使用transferTo上传文件没反应(解决)及用webflux的webclient进行文件上传。原创 2022-12-09 17:09:10 · 785 阅读 · 1 评论 -
利用java的atomic包下工具类的CAS功能手写一个读写锁并附带乐观锁功能
像这么好用的锁,JDK肯定是会有的。总结一下就是,读写锁,可以提高读的效率,还保证了数据的安全性,而加入乐观锁保证了读的时候也可以写,进一步提升了执行效率,再配合读锁,也保证了数据的安全性。所以在写的时候,读锁的判定条件应该是二个或二个以上,这样保证,第一个线程通过条件能进来的同时,其他线程也能通过别的条件进来。当然就这几行代码想把读写锁写的很完美是不现实的,可能它会存在一些问题,虽然我还没测试出什么问题,但是它应该是不可信的!好,上面写完后,我们就实现了一个读写锁,读和写是互斥的,所以他是一种悲观锁。原创 2022-09-14 18:55:21 · 313 阅读 · 0 评论 -
多个线程调用FutureTask导致我们写的Callable的call方法只执行了一次(原因:源码详解)(解决问题:详解)
两个多个线程调用FutureTask导致我们写的Callable只输出了一次;第一个线程执行的时候,FutureTask的state已经不是NEW了,callable变为null了。又因为我们两个线程用的FutureTask的同一个实例,所以第二个线程执行的时候,就直接到了这里return了;我们不想这样,怎么解决这种情况呢?;其实就是想办法让state的值为NEW,callable值不为null;方法一:再重新new一个FutureTask;方法二:利用反射;两个或多个线程调用Callable;原创 2022-09-12 22:21:01 · 829 阅读 · 1 评论