多线程
码基
码基
展开
-
stackoverflow上关于Promise和Future的形象比喻(翻)
这里我提供一个例子,告诉你什么是Promise,而且与Future不同,promise的值在某一时刻是如何被改变的,Future的值是只读的。 假如你有个老妈而且你找她要钱。 // 现在,你糊弄你老妈,让她做了一个promise最终会给你一笔钱, // 老妈返回给了你promise对象,但是她并没有立刻兑现 Supplier<Integer> momsPurse = ()-> { try { Thread.sleep(1000);//mom is b翻译 2020-11-08 10:34:34 · 250 阅读 · 0 评论 -
如何写一个死锁
这个实例展示了如果用java同步锁写一个死锁。 参考了网上的一些资料,具体说明见注释。 package pers.machi.deadlock; public class DeadlockDemo { public static void main(String[] args) throws InterruptedException { Account from = n...原创 2019-06-18 20:34:35 · 1083 阅读 · 0 评论 -
如何用AkkaActor模拟转账
对于并发问题有两种处理方法,一种就是采用多线程方法;多个线程对共享的资源进行争夺,缺点在于破坏了操作的原子性以及潜在的死锁风险。 另一种思路就是消息机制,在要并发的对象中通过传递消息控制其操作,AkkaActor就是基于这一原理的工具。 下面试着用AkkaActor模拟上一篇文章中的转账过称。具体说明见注释。 package pers.machi.akkaconcurrent import ak...原创 2019-06-20 10:38:16 · 252 阅读 · 0 评论 -
Ajax与Socket多线程通信
软件层面的网络通信低层均有Socket实现,这里尝试使用Ajax与Socket进行通讯。 出于简化,省略掉了IO流和Socket的关闭。 页面设计 页面设计了两个按钮,通过ajax以post方式向端口发送消息,消息内容分别为action A和action B,便于接收端区分。 <!DOCTYPE html> <html> <head> <titl...原创 2019-07-13 13:00:56 · 1317 阅读 · 0 评论