init commit

master
Kanken6174 2 years ago
commit a818b82674

3
.idea/.gitignore vendored

@ -0,0 +1,3 @@
# Default ignored files
/shelf/
/workspace.xml

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" languageLevel="JDK_18" default="true" project-jdk-name="18" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/TP2.iml" filepath="$PROJECT_DIR$/TP2.iml" />
</modules>
</component>
</project>

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

Binary file not shown.

@ -0,0 +1,5 @@
public class Main {
public static void main(String[] args) {
System.out.println("Hello World!"); // Display the string.
}
}

@ -0,0 +1,36 @@
package sweet;
import java.util.*;
/**
*
*/
public class Boulangerie {
private final ArrayList<Patisserie> sweets = new ArrayList<>();
/**
*
*/
public synchronized void depose(Patisserie p) {
this.notify();
sweets.add(p);
}
/**
*
*/
public synchronized Patisserie achete() {
while(sweets.size() == 0) {
try {this.wait();} catch (InterruptedException ignored) {}}
Patisserie pat = sweets.get(0);
sweets.remove(pat);
return pat;
}
/**
*
*/
public void getStock() {
// TODO implement here
}
}

@ -0,0 +1,18 @@
package sweet;
import java.util.*;
/**
*
*/
public class Client implements Runnable {
/**
* Default constructor
*/
public Client() {
}
@Override
public void run() {
}
}

@ -0,0 +1,18 @@
package sweet;
import sweet.Patisserie;
import java.util.*;
/**
*
*/
public class Gateau extends Patisserie {
/**
* Default constructor
*/
public Gateau() {
}
}

@ -0,0 +1,15 @@
package sweet;
import java.util.*;
/**
*
*/
public class Patisserie {
/**
* Default constructor
*/
public Patisserie() {
}
}

@ -0,0 +1,19 @@
package sweet;
import java.util.*;
/**
*
*/
public class Patissier implements Runnable {
/**
* Default constructor
*/
public Patissier() {
}
@Override
public void run() {
}
}

@ -0,0 +1,57 @@
package world;
import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.List;
public class threadWeaver {
private final List<Runnable> runners = new ArrayList<Runnable>();
private final List<Thread> managed = new ArrayList<Thread>();
public void addRunners(Runnable... runners){
}
public void weave(){
for(Runnable r: runners){
managed.add(new Thread(r));
}
}
public void run(){
for(Thread t : managed){
t.start();
}
}
public void recover(){
for(Thread t : managed){
try {
t.wait();
}catch(InterruptedException ie){
System.out.println(ie.getMessage());
}
}
termina();
}
public void recover(Long timeout){
for(Thread t : managed){
try {
t.wait(timeout);
}catch(InterruptedException ie){
System.out.println(ie.getMessage());
}
managed.remove(t);
}
termina();
}
public void termina(){
for(Thread t : managed){
System.out.println("Thread "+t.getName()+" has not stopped being cleaned up");
t.interrupt();
}
managed.clear();
runners.clear();
}
}
Loading…
Cancel
Save