ThingsBoard的Actor模型

0、概述

下面是我从网上查阅资料总结下来的.

1、背景

多线程编程是每个程序员的基本功,同时也是开发中的难点,处理各种“锁”的问题是让人十分头痛的一件事。例如,设计一个转账功能,怎么保证在多线程下能正常运行?你可能会说,这个简单,在进行转账操作前,先对两个账户加锁,再在两个账户加上synchronized关键字就行了,如下图所示:

其实上面这段代码是有问题的,可能发生程序死锁的情况,如线程1先获取账户A的锁,等待获取账户B的锁,同时,线程2也在做转账操作,先获取了账户B的锁,等待账户A的锁,于是就出现了死锁的情况,如下图:

是不是觉得多线程编程真是太难了,到处是陷阱,一不小心就掉坑里面了?那除了加锁,有没有其他的处理方法呢?答案是:有,就是下文要介绍的Actor模型(Actor model)。

2、Actor模型简介

Actor模型,在1


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部