Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Очередь потоков / 5 сообщений из 5, страница 1 из 1
16.10.2013, 20:13:21
    #38430329
Leyla89
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очередь потоков
1. Два потока должны выводить по очереди слова из предложения.
2. Алфавит. Один поток выводит на консоль гласные буквы, другой согласные.
Подскажите, пожалуйста, как этого добиться... Вот, что у меня пока что есть:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
public class ThreadOfWords extends Thread{ 
public ThreadOfWords(String str){ 
super(); 
setName(str); 
}

public synchronized void run(){
    String [] mas1 = {"My", "is", "I", "java."};
    String [] mas2 = {"name", "Leyla.", "like", ":)"};
    String [] mas3 = {"a", "e", "i", "o", "u"};
    String [] mas4 = {"b", "c", "d", "f", "g", "h", "j", "k", "l", "m", "n", "p", "q", "r", "s", "t", "v", "w", "x", "y", "z"};
    String nameT = getName();

    if("First".equals(nameT)){
        for(int i = 0; i < mas1.length; i++){
            System.out.println(mas1[i]);
            try{
                Thread.sleep(200);
            } catch(InterruptedException e){
                System.out.println(nameT + "прерван");
            }
        }
    } else if("Second".equals(nameT)){
        for(int i = 0; i < mas2.length; i++){
            System.out.println(mas2[i]);
            try{
                Thread.sleep(200);
            } catch(InterruptedException e){
                System.out.println(nameT + "прерван");
            }
        }
    } else if("Third".equals(nameT)){
        for(int i = 0; i < mas3.length; i++){
            System.out.println(mas3[i]);
            try{
                Thread.sleep(500);
            } catch(InterruptedException e){
                System.out.println(nameT + "прерван");
            }
        }
    } else if("Fourth".equals(nameT)){
        for(int i = 0; i < mas4.length; i++){
            System.out.println(mas4[i]);
            try{
                Thread.sleep(500);
            } catch(InterruptedException e){
                System.out.println(nameT + "прерван");
            }
        }
    }       
}
}

public class Words { 
public static void main(String[] args) { 
ThreadOfWords tr1 = new ThreadOfWords("First"); 
ThreadOfWords tr2 = new ThreadOfWords("Second");

    tr1.setPriority(10);
    tr2.setPriority(1);

    tr1.start();
    tr2.start();                
}
}

public class ABC { 
public static void main(String[] args) { 
ThreadOfWords tr1 = new ThreadOfWords("Third"); 
ThreadOfWords tr2 = new ThreadOfWords("Fourth");

    tr1.setPriority(10);
    tr2.setPriority(1);

    tr1.start();
    tr2.start();
}
}
...
Рейтинг: 0 / 0
17.10.2013, 10:15:15
    #38430783
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очередь потоков
Препод будет обижен. Он наверняка ожидал применения инструментов синхронизации.
Но ты, хитрюга, решила что и исходные данные - константы, и можно ничего сделать shared
nothing и ничено не синхронизировать. А тема лабораторной какая?
...
Рейтинг: 0 / 0
17.10.2013, 10:23:25
    #38430804
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очередь потоков
mayton,

Напомнило про вычисление даты через sleep().
...
Рейтинг: 0 / 0
17.10.2013, 11:26:43
    #38430922
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очередь потоков
И где-то в конце надо-бы .join() поставить.
...
Рейтинг: 0 / 0
17.10.2013, 11:52:21
    #38430957
Ivo
Ivo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очередь потоков
методы Object: wait, notify
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Очередь потоков / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]