大家来探讨一下 Java 方法执行问题!

2020-05-07 16:31:32 +08:00
 xhf1024

就是比如一个 a 方法,会执行很多遍,第一次执行的时候执行完的时候,期间有 100 个执行了 a 方法,现在又什么方法就是第一次执行完 a 方法,期间 100 次就等着,等第一次 a 方法执行完然后再执行一次?就好比送快递的,我手里拿一个快递,那我执行送快递这个操作,我送的期间快递站有络绎不绝的快递送到服务站等着我送,等我送完之后回来,我再拿起所有的快递去实行送快递这个操作,而不是有一个快递就得派一个人送。

3728 次点击
所在节点    Java
32 条回复
xhf1024
2020-05-07 16:32:44 +08:00
送快递这个操作==执行 a 方法
6IbA2bj5ip3tK49j
2020-05-07 16:37:01 +08:00
superJava
2020-05-07 16:37:43 +08:00
队列
evoluc97
2020-05-07 16:39:04 +08:00
单机 synchronized ReentrantLock
分布式 上分布式锁
KentY
2020-05-07 16:41:01 +08:00
典型的 use case of synchronized method?
victooory
2020-05-07 16:41:48 +08:00
Thread Join()
cookii
2020-05-07 16:50:59 +08:00
Executors.newSingleThreadExecutor(),这个有 oom 风险,也可以自己设定队列最大数量
singerll
2020-05-07 17:00:37 +08:00
程序不太懂,但这个是不是单片机原理里面讲的中断。。。
duwan
2020-05-07 17:04:07 +08:00
这不就是只有一个生产者的生产者消费者问题吗。
MisakaTang
2020-05-07 17:06:09 +08:00
服务站(缓存) 拿起所有的快递(批处理)
luckyrayyy
2020-05-07 17:06:26 +08:00
单线程任务队列?
duwan
2020-05-07 17:06:48 +08:00
说错了 只有一个消费者的生产者消费者问题
Hanggi
2020-05-07 17:08:23 +08:00
换 go 语言,逃
teawithlife
2020-05-07 17:08:31 +08:00
没用过 java,不知道是否有高级的办法。纯手撸的话,就是用一个 FIFO 队列。
soulzz
2020-05-07 17:23:32 +08:00
chibupang
2020-05-07 17:25:06 +08:00
CountDownLatch 了解一下
soulzz
2020-05-07 17:27:17 +08:00
我上面的代码好像没有概括清楚
接收快递装箱定义为一个单独的线程或很多线程,把待发的件收集到一个 list 中,list 到了一定大小后调用派件任务
freebird1994
2020-05-07 17:39:50 +08:00
多对一的生产消费模型?
guyeu
2020-05-07 18:29:51 +08:00
实在没看明白楼主在讲什么。。楼上大佬们好像都看懂了,谁能不能给翻译一下。。
Aynamic
2020-05-07 18:52:25 +08:00
@guyeu 我也不知道楼主讲什么

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/669335

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX