# Methode parallel starten



## Mentor49 (4. Jan 2009)

Hey,
folgendes Problem.
Ich habe Klasse A und Klasse B.
Diese laufen parallel und führen verschiedene Sachen aus.
Sobald bei Klasse B etwas bestimmtes passiert, soll eine Mathode in Klasse A ausgeführt [Event-Mäßig].
Ich hab mir das so gedacht:

```
Thread t = new Thread(KlasseA.meineMethode);
t.start();
```
Klappt aber nicht ^^
Weiß jemand wie ich das realisieren kann?

Lg


----------



## Gelöschtes Mitglied 5909 (4. Jan 2009)

implementiere in KlasseA das Runnable Interface und rufe in der run methode meineMethode auf


----------



## Mentor49 (4. Jan 2009)

In KlasseA ist Runnable bereits implementiert da die Klasse selbst von einer anderen gestartet wird.
Kann ich vielleicht irgendwie mein eigenes Event machen oder sowas?

Lg


----------



## 0x7F800000 (4. Jan 2009)

hmm, naja, schön wär's vielleicht. Wenn du sowas Funktionales machen willst, dann wird dir Landei spätestens in 10 Minuten Scala empfehlen  (nicht lange nachdenken, was ich da meine, der Witz ist eher für Landei gedacht  )

In Java ist für "Funktionszeiger" ein kleiner Umweg nötig, der würde in dem Fall etwa so aussehen:

```
new Thread( new Runnable() { 
  public void run() { 
    KlasseA.methode();
  }; 
} ).start();
```


----------



## Mentor49 (4. Jan 2009)

Okay, zwar sieht das verdammt unschön aus, und sowas ist eigentlich überhaupt nicht mein Programmierstil, aber was solls - es funktioniert^^

Vielen Dank
Chris
(Zu meinen C# / VB.NET Zeiten war das damals irgendwie einfacher )


----------



## frapo (4. Jan 2009)

Mentor49 hat gesagt.:
			
		

> (Zu meinen C# / VB.NET Zeiten war das damals irgendwie einfacher )



Das mag wohl sein.. bzw. mir geht es manchmal nicht anders. Aber dafür hat man heute einfach das bessere Gefühl wenn man gewisse M$-Technologien meidet   :wink:  :bae:


----------



## 0x7F800000 (4. Jan 2009)

Mentor49 hat gesagt.:
			
		

> Okay, zwar sieht das verdammt unschön aus, und sowas ist eigentlich überhaupt nicht mein Programmierstil, aber was solls - es funktioniert^^


Naja, das sieht halt so aus. Das ist weder besonders schön noch besonders unschön. Ist vielleicht nicht sonderlich kurz, aber passt ganz gut in das gesamtkonzept. Es gibt leider auch paar sachen, die wirklich sehr unschön sind. (mehrdimensionale generische Arrays :cry


----------



## SlaterB (4. Jan 2009)

Andrey hat gesagt.:
			
		

> ```
> new Thread( new Runnable() {
> public void run() {
> KlasseA.methode();
> ...



oder auch


```
new Thread() { 
  public void run() { 
    KlasseA.methode();
  }; 
}.start();
```


----------



## 0x7F800000 (4. Jan 2009)

ja, das ist wohl etwas kürzer, danke SlaterB :roll:

...oder eben gleich KlasseA von Thread ableiten, und "methode" in "run" umbenennen, und dann mit

```
(new KlasseA()).start();
```
laufen lassen, also, daran wär echt nix mehr "unschön"


----------



## Landei (4. Jan 2009)

Oder nimm Scala...


----------



## frapo (4. Jan 2009)

Landei hat gesagt.:
			
		

> Oder nimm Scala...



 :lol: ganz wie Andrey es schon angekündigt hat


----------



## Landei (4. Jan 2009)

Obwohl ich an der Stelle besser gesagt hätte: Oder nimm Aktoren


----------



## 0x7F800000 (4. Jan 2009)

frapo hat gesagt.:
			
		

> :lol: ganz wie Andrey es schon angekündigt hat


Naja, diesmal war ja offensichtlich ich selbst der Grund für diese Reaktion, und wer seine eigenen Prophezeihungen selbst erfüllt ist ein ziemlich mieser Wahrsager


----------



## hdi (4. Jan 2009)

> wer seine eigenen Prophezeihungen selbst erfüllt ist ein ziemlich mieser Wahrsager



Viele Leute kriegen aber nicht mal das hin


----------



## frapo (4. Jan 2009)

hdi hat gesagt.:
			
		

> > wer seine eigenen Prophezeihungen selbst erfüllt ist ein ziemlich mieser Wahrsager
> 
> 
> 
> Viele Leute kriegen aber nicht mal das hin



Jep, drum vorhin mein Statement dazu


----------

