是这样主要是为了理解一下多线程所以想弄一个银行业务的系统
在不考虑线程池的情况下用 Runnable/Thread 实现
目前的想法是这样:
java web 的分包结构:entity/dao/service
entity 里是简单的 UserBean,BankBean,
dao 和 service 对应这俩写 UserDao/BankDao,UserService/BankService
我想在 BankService 里写银行业务例如存钱取钱转账等
但是比如转账这些考虑多线程的操作需要实现接口或者继承类?直接 BankService 实现一个 Runnable 感觉很奇怪
1
xiaoidea 2019-04-10 13:05:24 +08:00
没理解这里用多线程干嘛,是想存钱取钱转账等操作用单独的线程搞?那主线程里得获取后台线程的操作结果展现给用户吧,最终主线程还是要阻塞等工作线程执行完。如果一次 bankservice 请求只涉及数据库的增删改查,我认为不适合用多线程。强行上多线程的话,就把存钱取钱转账各自包装一个 Callable,提交给 ListeningExecutorService 获取 future 吧
|
2
winterfell30 2019-04-10 13:10:54 +08:00
《 C++并发编程实战》里面有个 ATM 的设计应该可以参考到
|