| Hjem | Hardware | Netværk | Programmering | software | Fejlfinding | systemer | 
software  
  • Adobe Illustrator
  • animation Software
  • Antivirus Software
  • Audio Software
  • Sikkerhedskopiere data
  • brænde cd'er
  • brænde dvd'er
  • Datakomprimeringssystem
  • database Software
  • Desktop Publishing
  • Desktop Video
  • Digital Video Software
  • Drupal
  • Educational Software
  • Engineering Software
  • Fil Forlængelse Types
  • finansiel Software
  • Freeware, Shareware & Abandonware
  • GIMP
  • grafik Software
  • Home Recording Software
  • Microsoft Access
  • Microsoft Excel
  • Microsoft Publisher
  • Microsoft Word
  • Open Source Code
  • Anden Computer Software
  • PC spil
  • Photoshop
  • Portable Document Format
  • PowerPoint
  • præsentation Software
  • produktivitet Software
  • Quicktime
  • Remote Desktop Management
  • SQL Server
  • Skype
  • Software betaversioner
  • Software Consultants
  • Software Development Companies
  • software Licensing
  • regneark
  • Skat forberedelse software
  • Utility Software
  • Web Clip Art
  • Windows Media Player
  • Tekstbehandling Software
  •  
    Computer Viden >> software >> Utility Software >> Content
    Sådan Code en cyklisk Executive i Java
    En cyklisk executive giver et alternativ til at skrive et altfavnende , real -time operativsystem. Den består af en uendelig løkke , der indeholder sæt af handlinger. Hvert sæt indledes med en venteperiode , der styrer , når sættet er at udføre sine handlinger. Følgende kode giver et eksempel : while ( true) { //vent 3 secondswait ( 3000) ;//modtage en net besked ....... //vent 2 sekunder fuldstændig modtagelsen af ​​messagewait (2000) ;//scanne indholdet af meddelelsen ....... } Disse indsatsområder sæt kan ofte køre sideløbende med en vis grad af synkronisering. I Java er gevind en mekanisme til at køre samtidige opgaver ved hjælp af pauser til at bistå med synkronisering. Instruktioner
    Identificer Opgaver
    1

    Vælg et design mønster, der ligger tættest på adfærd kravene til ansøgningen , der skal bygges som en cyklisk udøvende magt. Sørg for, at design mønster omfatter indholdet af løkken gør op den cykliske udøvende magt.
    2

    Par adfærd af design mønster med ansøgningen krav. Sørg for, at hver af de synkroniserede , samarbejdende processer er forbundet med hver af adfærd er beskrevet i ansøgningen .
    3

    Identificere de Java -specifikke detaljer, der gør op hver af processens Tråd klasser af ansøgningen. Sørg for at oprette en synkronisering pause for hver proces Thread klassen for at sikre korrekt timing mellem processerne og undgå unormale tilstande såsom racing. Opret support klasser til at fungere som dataudveksling buffere mellem processer, såsom køer efter behov. Opret en log stream klasse til at definere logs sporing udførelsen af ​​hver proces tråd.
    Organiser Package
    4

    Byg en cyklisk udøvende vigtigste klasse , der instantierer processen Tråd klasser , særlig støtte klasser og eventuelle andre påkrævede initialisering, såsom følgende : Hej

    class CyclicExec { public static void main ( String [] args ) {//initialisere de nødvendige ressourcer .......... ........................... //define en tråd log classLogStream ls = new LogStream (); ......... ............................ //initialisere support klasser ................. .................... MsgQueue sq = new MsgQueue (....) ; .................. ................... //initialisere proces gevind klasser ......................... ............ //instantiere Process_1 proces og definere dets tilknyttede threadProcess_1 p1 = new Process_1 ( ...... ) T_Process_1 = ny tråd ( p1 ) ;//aktivere gevind til Process_1try { T_Process_1.start ( );} catch ( IllegalThreadStateException e ) {//log en dårlig tråd start og exit .......................... ........... }}}
    5

    Tilføj til pakken hver proces Tråd klasser følgende eksempel viser : Hej

    class Process_1 udvider tråd { //initializationpublic Process_1 (.... ) {//oprettet en log for denne tråd ( P_S er foruddefineret log stream objekt) PrintStream p1_s = p_s.make_it ( Processs_1_Log_File ) ;//initialisere processen tråden .. ................................... } .............. ....................... //udførelse - bedt gennem implicitte start () metode, der anvendes i de vigtigste classpublic void run () { //core loopwhile ( true) { //core proces ..................................... //pause efter at have kørt en cyklus af kernen processtry { sleep ( Process_1_Wait );} catch ( InterruptedException e ) {//log en pause undtagelse .......................... ............. }} }}
    6

    Byg support klasser, der definerer messaging buffere mellem proces Tråde med sine buffer adgang metoder kvalificeret som synkroniseret , som den følgende eksempel viser : Hej

    offentlig synkroniseret byte PushIt ( byte Itm ) { ................................ ............................. }
    7

    Byg en særlig klasse , der definerer logfilerne sporing adfærd processen Tråd klasser, såsom : Hej

    class LogStream { private boolean LogState ;//klasse initializerpublic LogStream (String LogStateIn ) { this.LogState = false; if ( LogStateIn.equals ( "ja" ) ) this.LogState = true ;} //oprette en log stream til en filepublic PrintStream make_it (String LogLocation ) { PrintStream This1 , String dette2 , hvis ( this.LogState ) { dette2 = new String ( LogLocation );} else { dette2 = new String ( " /dev /null "); } try { This1 = new PrintStream (ny FileOutputStream ( dette2 , true) );} catch ( Exception e ) { This1 = null ;} tilbagevenden This1 ;}}

    Test og Deliver
    8

    Definer en sekvens af testscenarier for at dække både ekstreme og normal drift betingelser for at forfine synkronisering mellem processen tråde.
    9

    anmeldelse processen tråden logs for at sikre , at processen tråd klasser drives som forventet. Sørg for, at intet væddeløb eller lignende forhold fandt sted.
    10

    Forberede anvendelsen levering pakke ved herunder klasse ( eksekverbare filer) for hver af de proces- tråde, den vigtigste klasse , messaging support klasser og log stream klasse . Medtag scripts, der losser og konfigurere klasse filer samt initialisere den mappe, hvor processen tråd logfiler skal placeres .

    Forrige :

    næste :
      Relaterede artikler
    ·Sådan bruges en Mac nøglering 
    ·Sådan fjernes EasyCleaner 2,0 
    ·Sådan Ryd historie My web søgninger 
    ·Programmer til at brænde DVD'er og CD'er på en comput…
    ·Jeg bliver SyncMate pop- ups 
    ·Sådan Put en DivX film på en cd til at se på en DivX…
    ·En definition af VMware Player 
    ·Sådan bruges Ægte Crypt 
    ·Internet Speed ​​Up Tools 
    ·Sådan deaktiverer GUS i DOSBox 
      Anbefalede Artikler
    ·MS Publisher FAQ 
    ·Sådan Indsæt et JPG i Microsoft Word 
    ·Sådan køber Photoshop CS2 
    ·Sådan bruges Remedy billetsystem 
    ·Sådan åbner ratDVD 
    ·Sådan oprettes rullepaneler 
    ·Sådan foretages en kommentar på en Word-dokument 
    ·Sådan bruges Magic Wand til at droppe en baggrund i Ph…
    ·Hvad er fordelene ved stemmegenkendelse Software 
    ·Sådan Brænd en film på en DVD-RW ROM 
    Copyright © Computer Viden http://www.computerdk.com