Når Java-programmører bevæge sig ud over de grundlæggende læringsprojekter , og især hvis de ønsker at begynde at arbejde på computerspil , begynder de at arbejde med multi- threaded programmer. Disse er program designs , hvor ansøgningen lancerer flere delopgaver , eller tråde , for at køre samtidig til hinanden. Dette tillader skabelsen af mere sofistikerede brugergrænseflader end en single-threaded program . Nødvendighed
Behovet for flere tråde kommer fra den grundlæggende udformning af de fleste programmeringssprog , herunder Java. Et program bevæger sig gennem sin kode på en lineær måde , udførelse hvert sæt af instruktioner , som det kommer til det. Følgelig kan en grundlæggende, single-threaded program ikke udføre to funktioner på samme tid . For eksempel kan en grundlæggende program ikke begge tager brugerens input og køre en timer. Timeren ville pause , indtil brugeren færdig med at skrive i hans input , på hvilket tidspunkt timeren kunne genoptages.
Multitasking
En Java -program kan multitaske ved at tildele to opgaver , der der skal køres på samme tid til to forskellige tråde . Mens der i en teknisk forstand trådene ikke bliver henrettet perfekt parallelt , da hver tråd er planlagt til forskellige CPU adgang gange , slutresultatet for brugeren er to opgaver, for alle henseender udføre samtidigt. Men når flere tråde kører , at adgang til og ændre det samme sæt af variabler , programmøren skal bruge låse eller andre concurrency metoder , for at sikre dataintegritet.
Tråd Class < br >
Nye strenge udføres med en " tråd" objekt. Programmøren skriver sub- opgave ny tråd vil være håndtering ind i en klasse , der udvider interface " Runnable ". Dette kræver , at klassen har en " public void run () "-metoden , som vil være udgangspunktet for den nye tråd. For at starte tråden , programmøren skaber en ny instans af sin sub -task klasse, så opretter en ny tråd objektet med sub -task instans som et argument. Endelig programmøren påberåber sig "start () "-metoden af tråden klassen at løbe tråden.
Daemon Gevind
Daemon tråde er processer , hvis eneste formål er at levere oplysninger til eller udføre opgaver for andre kørende tråde. Fordi et program vil fortsætte med at køre , så længe der er en aktiv tråd , programmører nødt til at sørge for at sikre , at alle emner iklæder sig op på det tidspunkt, brugeren forlader programmet . Daemon tråde gør Java program design processen lettere. Når et program har kun daemon tråde kører, den lukker. Fordi daemon tråde kun servicere andre tråde , hvis alle de andre tråde er væk er det en logisk konklusion , at programmet er gennemført. Java-programmører slå en almindelig tråd i en dæmon tråd ved at påberåbe sig " setDaemon " metode til tråden objekter, de skaber med det argument "sande ".