由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Java版 - multi-threading guru们 (转载)
相关主题
怎么学multithreading/concurrency?one multi-threading question
问一个基础问题新手问个multi-threading关于synchronized和volatile的问题
请教:怎么把synchronize的method改成用thread 但thread safe呢?怎么练习java multithread
如何让两个socket并行执行threadApply lock on a class.
求问如何学习multithreadingRe: Help!!! Java in Unix. Thread. I need exit and ls concurrently runn
Java synchronized method一问question on single thread & multithread
Re: How to lock a file and detect a thread is over?a Java MultiThreading question
[转载] 现在还有什么OS不是THREAD级调度的吗?Basic thread question
相关话题的讨论汇总
话题: method话题: method2话题: class话题: thread话题: job2
进入Java版参与讨论
1 (共1页)
I**A
发帖数: 2345
1
【 以下文字转载自 JobHunting 讨论区 】
发信人: IAYA (你是我的天使), 信区: JobHunting
标 题: multi-threading guru们
发信站: BBS 未名空间站 (Thu Nov 11 12:25:01 2010, 美东)
java里
Class C{
method 1{}
method 2{}
}
How can we guarantee that method 1 can only be called after method 2 is
called and finished?
Thanks a lot~
N***m
发帖数: 4460
2
How about
Class C {
method3()
{
method2();
method1();
}

【在 I**A 的大作中提到】
: 【 以下文字转载自 JobHunting 讨论区 】
: 发信人: IAYA (你是我的天使), 信区: JobHunting
: 标 题: multi-threading guru们
: 发信站: BBS 未名空间站 (Thu Nov 11 12:25:01 2010, 美东)
: java里
: Class C{
: method 1{}
: method 2{}
: }
: How can we guarantee that method 1 can only be called after method 2 is

g*****g
发帖数: 34805
3
make method 1 private, set up method 3
public void method3() {
method2;
method1;
}

【在 I**A 的大作中提到】
: 【 以下文字转载自 JobHunting 讨论区 】
: 发信人: IAYA (你是我的天使), 信区: JobHunting
: 标 题: multi-threading guru们
: 发信站: BBS 未名空间站 (Thu Nov 11 12:25:01 2010, 美东)
: java里
: Class C{
: method 1{}
: method 2{}
: }
: How can we guarantee that method 1 can only be called after method 2 is

l**********n
发帖数: 8443
4
thread1.join(); // in thread1 call method1
// in main thread call method2

【在 g*****g 的大作中提到】
: make method 1 private, set up method 3
: public void method3() {
: method2;
: method1;
: }

N***m
发帖数: 4460
5
这才发现是multithread's context:(

【在 l**********n 的大作中提到】
: thread1.join(); // in thread1 call method1
: // in main thread call method2

I**A
发帖数: 2345
6
必须创建独立的thread?

【在 l**********n 的大作中提到】
: thread1.join(); // in thread1 call method1
: // in main thread call method2

m****r
发帖数: 6639
7
我这样写
class job1 {
C obj;
job1 (C c) { obj = c; }
run() {
synchronize (obj) {
if (method2 not done) obj.wait();
obj.method1
}
}
class job2 {
run() {
synchronize (obj) {
obj.method2;
obj.set method2 done;
obj.notifyAll();
}
}
in main thread
C c = new C();
new Thread(new job1(c)).start();
new Thread(new job2(c)).start();
这个应该是本来的意思.

【在 I**A 的大作中提到】
: 【 以下文字转载自 JobHunting 讨论区 】
: 发信人: IAYA (你是我的天使), 信区: JobHunting
: 标 题: multi-threading guru们
: 发信站: BBS 未名空间站 (Thu Nov 11 12:25:01 2010, 美东)
: java里
: Class C{
: method 1{}
: method 2{}
: }
: How can we guarantee that method 1 can only be called after method 2 is

l**********n
发帖数: 8443
8
if only one thread needs be waken up, then use notify, otherwise use
notifyall.

【在 m****r 的大作中提到】
: 我这样写
: class job1 {
: C obj;
: job1 (C c) { obj = c; }
: run() {
: synchronize (obj) {
: if (method2 not done) obj.wait();
: obj.method1
: }
: }

m****r
发帖数: 6639
9
i re-write job2 like this:
class job2 {
run() {
synchronize (obj) {
obj.method2;
obj.set method2 done;
if (need to wake up only one thread) {
obj.notify();
} else {
obj.notifyAll();
}
}
}

【在 m****r 的大作中提到】
: 我这样写
: class job1 {
: C obj;
: job1 (C c) { obj = c; }
: run() {
: synchronize (obj) {
: if (method2 not done) obj.wait();
: obj.method1
: }
: }

L*******r
发帖数: 8961
10
没意思。一件事一件事地办不就完了?本来就只有一个CPU,
非要Multi-Threading?岂不是自欺欺人?
1 (共1页)
进入Java版参与讨论
相关主题
Basic thread question求问如何学习multithreading
How to ues log4j to send log email in the multithreaded processes as similiar with single-threadedJava synchronized method一问
CC150 16.6答案是不是有问题? (转载)Re: How to lock a file and detect a thread is over?
怎么可以练习多线程编程呢?[转载] 现在还有什么OS不是THREAD级调度的吗?
怎么学multithreading/concurrency?one multi-threading question
问一个基础问题新手问个multi-threading关于synchronized和volatile的问题
请教:怎么把synchronize的method改成用thread 但thread safe呢?怎么练习java multithread
如何让两个socket并行执行threadApply lock on a class.
相关话题的讨论汇总
话题: method话题: method2话题: class话题: thread话题: job2