JAVA. ЗАДАЧА 17.02.01. ПОТОКИ.

package com.javarush.test.level17.lesson02.task01; import java.util.ArrayList; import java.util.List; /* Заметки 1. Класс Note будет использоваться нитями. 2. Создай public static нить NoteThread (Runnable не является нитью), которая в методе run 1000 раз (index = 0-999) сделает следующие действия: 2.1. используя метод addNote добавит заметку с именем [getName() + "-Note" + index], например, при index=4 "Thread-0-Note4" 2.2. используя [...]

By | Сентябрь 26th, 2016|Categories: Уровень 17|Tags: |0 Comments

JAVA. ЗАДАЧА 17.06.02. VOLATILE.

package com.javarush.test.level17.lesson06.task02; /* Предложения Не используя synchronized сделайте так, чтобы количество сделанных и принятых предложений было одинаковым. */ public class Solution { public static volatile int proposal = 0; public static void main(String[] args) { new MakeProposal().start(); new AcceptProposal().start(); } public static class MakeProposal extends Thread { @Override public void run() { int thisProposal = [...]

By | Сентябрь 25th, 2016|Categories: Уровень 17|Tags: |0 Comments

JAVA. ЗАДАЧА 17.06.01. VOLATILE.

package com.javarush.test.level17.lesson06.task01; import java.util.ArrayList; import java.util.List; /* Заметки для всех Класс Note будет использоваться нитями. Поэтому сделай так, чтобы лист notes находился в общей памяти */ public class Solution { public static class Note { public volatile List<String> notes = new ArrayList<String>(); public void addNote(int index, String note) { System.out.println("Сейчас будет добавлена заметка [" + [...]

By | Сентябрь 25th, 2016|Categories: Уровень 17|Tags: |0 Comments

JAVA. ЗАДАЧА 17.04.04. СИНГЛТОН. ИНИЦИАЛИЗАЦИЯ ЧЕРЕЗ СИНХРОНИЗАЦИЮ.

package com.javarush.test.level17.lesson04.task04; /* Синхронизированный президент И снова Singleton паттерн - синхронизация в статическом блоке Внутри класса OurPresident в статическом блоке создайте синхронизированный блок. Внутри синхронизированного блока инициализируйте president. */ public class Solution { public static class OurPresident { private static OurPresident president; private OurPresident() { } public static OurPresident getOurPresident() { return president; } static [...]

By | Сентябрь 25th, 2016|Categories: Уровень 17|Tags: , |0 Comments

JAVA. ЗАДАЧА 17.04.03. СИНХРОНИЗАЦИЯ.

package com.javarush.test.level17.lesson04.task03; import java.util.ArrayList; import java.util.List; /* Сад-огород 1. Создайте метод public void addFruit(int index, String fruit) - который добавляет параметр fruit в лист fruits на позицию index 2. Создайте метод public void removeFruit(int index) - который удаляет из fruits элемент с индексом index 3. Создайте метод public void addVegetable(int index, String vegetable) - который [...]

By | Сентябрь 25th, 2016|Categories: Уровень 17|Tags: |0 Comments

JAVA. ЗАДАЧА 17.04.05. СИНГЛТОН. РЕАЛИЗАЦИЯ ЧЕРЕЗ СИНХРОНИЗАЦИЮ.

package com.javarush.test.level17.lesson04.task05; /* МВФ Singleton паттерн - синхронизация в методе IMF - это Международный Валютный Фонд Внутри метода getFund создайте синхронизированный блок Внутри синхронизированного блока инициализируйте переменную imf так, чтобы метод getFund всегда возвращал один и тот же объект */ public class Solution { public static class IMF { private static IMF imf; public static [...]

By | Сентябрь 25th, 2016|Categories: Конспекты, Полезные задачи, Уровень 17|Tags: , |0 Comments

JAVA. ЗАДАЧА 17.04.02. SYNCHRONIZED.

package com.javarush.test.level17.lesson04.task02; import java.util.ArrayList; import java.util.List; /* Синхронизированные заметки 2 Класс Note будет использоваться нитями. Поэтому сделай так, чтобы вcе методы были синхронизированы */ public class Solution { public static class Note { public final List<String> notes = new ArrayList<String>(); public synchronized void addNote(int index, String note) { System.out.println("Сейчас будет добавлена заметка [" + note [...]

By | Сентябрь 21st, 2016|Categories: Уровень 17|Tags: |0 Comments

JAVA. ЗАДАЧА 17.04.01. SYNCHRONIZED();

package com.javarush.test.level17.lesson04.task01; import java.util.ArrayList; import java.util.List; /* Синхронизированные заметки 1. Класс Note будет использоваться нитями. Поэтому сделай так, чтобы обращения к листу notes блокировали мютекс notes, не this 2. Все System.out.println не должны быть заблокированы (синхронизированы), т.е. не должны находиться в блоке synchronized */ public class Solution { public static class Note { public final [...]

By | Сентябрь 21st, 2016|Categories: Уровень 17|Tags: |0 Comments

JAVA. ЗАДАЧА 16.13.02. БЛЯДСКИЕ ПОТОКИ. СПИСАЛ, СОБСТВЕННОЕ РЕШЕНИЕ НЕ ПРИНЯЛ ВАЛИДАТОР.

package com.javarush.test.level16.lesson13.bonus02; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; /* Клубок 1. Создай 5 различных своих нитей c отличным от Thread типом: 1.1. нить 1 должна бесконечно выполняться; 1.2. нить 2 должна выводить "InterruptedException" при возникновении исключения InterruptedException; 1.3. нить 3 должна каждые полсекунды выводить "Ура"; 1.4. нить 4 должна реализовать интерфейс [...]

By | Сентябрь 21st, 2016|Categories: Уровень 16|Tags: |0 Comments

JAVA. ЗАДАЧА 17.02.02. ПОТОКИ. СОРТИРОВКА МАССИВА.

package com.javarush.test.level17.lesson02.task02; import java.util.ArrayList; import java.util.List; /* Вместе быстрее? Ща проверим :) 1. Разберись, что и как работает 2. Создай public static нить SortThread, которая в методе run отсортирует статический массив testArray используя метод sort */ public class Solution { public static int countThreads = 10; public static int[] testArray = new int[1000]; static { [...]

By | Сентябрь 20th, 2016|Categories: Уровень 17|Tags: , |0 Comments