|
|
#1 (permalink) |
|
mammut
Reg: 25.05.2007
Beiträge: 799
![]() |
Hallo,
"Multitasking" ist vielleicht das falsche Wort, aber mir fällt nicht ein wie ich es sonst nennen soll. Vielleicht könnt Ihr mir ja ein Stichwort nennen, mit dem ich dann evtl. auch google fragen kann. Und zwar möchte ich zum Beispiel in einem Programm Ziffern hochzählen lassen, gleichzeitig möchte ich aber noch andere Aktionen ausführen, Beispielsweise 2 Werte eingeben lassen und diese addieren. Der Zähler soll aber immer hochzählen, auch wenn grad keine Tasteneingabe stattfindet. Könnt Ihr mir da ein paar Tipps, oder Denkanstöße geben. Bin noch Anfänger in Sachen C++. |
|
|
|
| Gesponsorte Links |
|
|
#3 (permalink) |
|
mammut
Reg: 25.05.2007
Beiträge: 799
![]() |
Das ist ja dann doch schon etwas Komplexer.
Hab bis jetzt nur etwas in C gemacht, um mal ein paar Leds oder Led-Matrix an µC anzusteuern. Jetzt ist in der Schule C++ dazugekommen, ich denke aber nicht das wir bis zum Multitasking kommen werden. |
|
|
|
|
#4 (permalink) | |||||||||
|
bekämpft die Mächte des Bösen
|
Es is halt eine ganz andere Denkweise, wenn du mehrere Threads parallel hast.
Um mal ein Beispiel zu machen. Stell dir vor, du hast 2 Threads, die parallel ablaufen. Thread 1 inkrementiert eine Variable. Thread 2 gibt die Variable aus. PHP-Code:
Code:
Tatsächlich kann aber sowas rauskommen: Code:
|
|||||||||
|
|
|
|
|
#5 (permalink) | |
|
return void
|
Zitat:
Ohne korrekte Synchronisierung, die wirklich nicht einfach ist, können viele Fehler auftreten, die sehr schwer zu finden sind. In theHackers Beispiel haben wir das Problem, dass er auf die Variable ohne Synchronisierung zugegrifen hat, dadurch kann ein Thread auf alte Werte aus dem Arbeitsspeicher zugreifen (lesend) während der andere in die Register der CPU schreibt und die Werte nur selten in den Arbeitsspeicher kopiert werden, dadurch sieht der lesende Thread unter Umständen falsche (alte) Werte: stale Data |
|
|
|
|
|
|
#6 (permalink) | |||
|
Oben bleiben!
|
Du könntest sowas auch ohne Multitasking schreiben, aber dann wird's furchtbar kompliziert, etwa so
Code:
Jede Minute verstreichen in Afrika ganze 60 Sekunden.
Kopiere dies in Deine Signatur, wenn Du Maultaschen magst. Mein Stern: epsilon carinae
|
|||
|
|
|
![]() |
| Gesponsorte Links |
| Anzeige |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | |
| Ansicht | |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Reftausch: Du zu "EuroFriend", "Klammgeil Anteils VMS" oder "LoseluX", ich zu ... | ralf2511 | Rallys, Refhandel, Reftausch & anderes | 26 | 23.02.2009 15:12:38 |
| Bis zum 24 gibts Sofort "7mio" + bis zu 100%RB + Userrally / Komm nach "Losegier" / Mach mit bei den Super rallys / | brandi32 | Lose4Refs (erledigt) | 50 | 24.12.2008 14:55:44 |
| Game Boy spiele "DuckTalers 2", "Super Mario Land", "Goal!" | Bani | Lose4Misc | 1 | 13.03.2007 10:34:57 |
| [B] Mailtausch-Addon "S-Slot" und "50/50-Game" UND "1 aus 10" *NEU* | Anstaltsleiter | Lose4Scripts (erledigt) | 11 | 14.02.2007 10:38:12 |
| Thunderbird "Trash", "Sent"; "INBOX" - Ordner umbenennen. Wie? | Fengar | Software/Windows | 2 | 24.06.2006 08:39:06 |