由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 请教银行系统设计题,请看我写的code
相关主题
Linked电面分享,挺好的题 应该已挂问道多线程的简单题目
Java编程讨论:LinkedIn的H2O分享面试题
Amazon一道synchronization的面试题设计问题讨论
一道多线程的面试题G家 system design 和 open ended questions
菜鸟请教多线程怎么学设计题
有一道Java多线程的面试题能不能帮我看看?一道Iterator题
java多线程问题请教 (转载)多线程hashmap。 实现方法讨论
【Fulltime】西雅图 天使轮 startup 招工程师滚烫烫的G店面面经
相关话题的讨论汇总
话题: balance话题: double话题: acountnum话题: object话题: bank2
进入JobHunting版参与讨论
1 (共1页)
k****r
发帖数: 807
1
不是很懂多线程,请教我这样的设计可以满足面试官对于deposit和withdraw的提问吗?
哪里可以找到代码学习学习,谢谢。
class bank2 {
private double balance;
private int acountNum;
private Object lock = new Object();
public bank2(int a, double b) {
acountNum = a;
balance = b;
}

public boolean withdraw(double w) {
synchronized(lock) {
if (balance < w) return false;
balance -= w;
return true;
}
}
public boolean deposit(double d) {
synchronized(lock) {
balance += d;
return true;
}
}
}
k****r
发帖数: 807
2
大牛们都不屑回答这种烂大街的题了吗
g*****g
发帖数: 34805
3
Use AtomicDouble and thank me later.

【在 k****r 的大作中提到】
: 大牛们都不屑回答这种烂大街的题了吗
z*******o
发帖数: 4773
4
Use BigDecimal and thank me later.
k****r
发帖数: 807
5
大牛们有没有现成的样板可以学习下啊,我这二把刀真的怕写的不好。thank you two
now!
k******a
发帖数: 44
6
求人不如放狗
java concurrency bank example
https://www.google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q
=java%20concurrency%20bank%20example
看面试官对于withdraw和deposit的具体要求。
另外,注意细节。
1. balance -= d;
2. 输入的合法性检查
k****r
发帖数: 807
7
也是搜了几个,没找到写的好的。
谢谢, 一个bug:P 已修正。

#q

【在 k******a 的大作中提到】
: 求人不如放狗
: java concurrency bank example
: https://www.google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q
: =java%20concurrency%20bank%20example
: 看面试官对于withdraw和deposit的具体要求。
: 另外,注意细节。
: 1. balance -= d;
: 2. 输入的合法性检查

s**x
发帖数: 7506
8
系统design 一般不会让你写代码。
j**********3
发帖数: 3211
9
哪个题啊?
z*******3
发帖数: 13709
10
java多线程有的是各种乱七八糟的轮子帮忙搞多线程
你不需要手写多线程的并发控制
ejb, spring, akka, vert.x随便一个都可以控制住
退一步说,如果你真要自己处理多线程并发处理
用java.util.concurrency这个libs里面的类
自己看,古德霸说的atomic double这些都在那里面
估计不会让你写,而是直接问你比如hashmap vs hastable这种问题
thread safe诸如此类,如果你java基础语法没有问题的话
花点时间在其他东西上,别什么都自己折腾,去看看别人的轮子是怎么跑的
领悟精神,理解原理
对了,如果是银行的话,多半有db,理解transaction, jdbc, hibernate这些东西
transaction也可以控制住,而且多数时候,那些老代码都是transaction在搞并发处理
oracle就靠这个插管吸血了

吗?

【在 k****r 的大作中提到】
: 不是很懂多线程,请教我这样的设计可以满足面试官对于deposit和withdraw的提问吗?
: 哪里可以找到代码学习学习,谢谢。
: class bank2 {
: private double balance;
: private int acountNum;
: private Object lock = new Object();
: public bank2(int a, double b) {
: acountNum = a;
: balance = b;
: }

1 (共1页)
进入JobHunting版参与讨论
相关主题
滚烫烫的G店面面经菜鸟请教多线程怎么学
请教一个多线程问题,哪一种synchronization primitive只应许一个thread在critical section里?有一道Java多线程的面试题能不能帮我看看?
实现一个 thread-safe blocking queue这题怎么写啊?L家的常考java多线程问题请教 (转载)
如何两个线程同时写一个文件【Fulltime】西雅图 天使轮 startup 招工程师
Linked电面分享,挺好的题 应该已挂问道多线程的简单题目
Java编程讨论:LinkedIn的H2O分享面试题
Amazon一道synchronization的面试题设计问题讨论
一道多线程的面试题G家 system design 和 open ended questions
相关话题的讨论汇总
话题: balance话题: double话题: acountnum话题: object话题: bank2