请教一下加入多线程的项目设计

2019-04-10 12:37:18 +08:00
 mart1nN

是这样主要是为了理解一下多线程所以想弄一个银行业务的系统

在不考虑线程池的情况下用 Runnable/Thread 实现

目前的想法是这样:

java web 的分包结构:entity/dao/service

entity 里是简单的 UserBean,BankBean,

dao 和 service 对应这俩写 UserDao/BankDao,UserService/BankService

我想在 BankService 里写银行业务例如存钱取钱转账等

但是比如转账这些考虑多线程的操作需要实现接口或者继承类?直接 BankService 实现一个 Runnable 感觉很奇怪

1819 次点击
所在节点    Java
2 条回复
xiaoidea
2019-04-10 13:05:24 +08:00
没理解这里用多线程干嘛,是想存钱取钱转账等操作用单独的线程搞?那主线程里得获取后台线程的操作结果展现给用户吧,最终主线程还是要阻塞等工作线程执行完。如果一次 bankservice 请求只涉及数据库的增删改查,我认为不适合用多线程。强行上多线程的话,就把存钱取钱转账各自包装一个 Callable,提交给 ListeningExecutorService 获取 future 吧
winterfell30
2019-04-10 13:10:54 +08:00
《 C++并发编程实战》里面有个 ATM 的设计应该可以参考到

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

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

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

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

© 2021 V2EX