Parallelo :: dipende

Invio parallelo-dipendente dal codice perl o shell
Scarica ora

Parallelo :: dipende Classifica e riepilogo

Annuncio pubblicitario

  • Rating:
  • Licenza:
  • Perl Artistic License
  • Prezzo:
  • FREE
  • Nome editore:
  • Steven Lembark
  • Sito web dell'editore:
  • http://search.cpan.org/~lembark/

Parallelo :: dipende Tag


Parallelo :: dipende Descrizione

Spedizione dipendente dal parallelo di perl o codice di shell Parallel :: Dipender è un modulo Perl che fa in modo parallelo, invio di metodi di metodi perl, funzioni perl, blocchi di codice in linea o comandi di shell esterni. La sintassi pianificazione è derivata dalla marca ma non richiede che tutti i lavori siano avvolti nel codice della shell per eseguire e supporta anche le sottomarche ("gruppi") che vengono inviati come una cronologia dell'unità. Asecuzione, incluso lo stdout e lo stderr di ogni lavoro, è conservato in file per lavoro per un accesso più semplice dopo il fatto di fatto.synopsis pacchetto minimo; Usa Base QW (parallelo :: dipende da :: Else); My $ Manager = Mine-> Constructify (@Whatever); My @Argz = (# Assegna valori agli attributi Riavvia => '' ', # Riavvia in-process code Force =>' ', # Ignora / sovrascrittura Esecuzione precedente Verbose => 1, # Tranquillo (0), Progresso (1), Dettaglio (2). Debug => 0, # db :: Single Set Prima prima analizzare, spedire nofork => '', # single-stream, utile per il test. Maxjobs => 8, # 0 => Illimitato, x <0 => nofork. fork_ttys => '', # usato per $ dB :: fork_tty con perl debugger autoload => '', # Scegli tra Autoload e shell logdir => "$ bin /../ Var / Log", # STDERR , Stdout Files rundir => "$ bin /../ var / run", file di stato del lavoro # Sched => ("bar") Bim = {il tuo codice qui} # $ Anon_sub -> ('BIM') BAM = / sistema / to / shell # sistema ('/ percorso / to / shell', 'bam') questo = ./blah -a -b # sistema ('./blah -a -b', 'questo') # Esempio di Riutilizzazione di un alias: file # maxjobs zip in parallelo. /tmp/bakcup/bigdump.aa = squish /tmpd/bakcup/bigdump.ab = squish /tmp/bakcup/bigdump.ac = squish /tmp/bakcup/bigdump.ad = Squish /tmp/bakcup/bigdump.ae = Squish /tmp/bakcup/bigdump.af = Squish / TM P / BAKCUP / BIGDUMP.AA: /TMP/BakCUP/BIGDUMP.AB: /TMP/BAKCUP/BIGDUMP.AC: /TMP/BAKCUP/BIGDUMP.AD: /TMP/BAKCUP/BIGDUMP.AE: / TMP / BAKCUP / BigDump .AF: # Gruppi sono sotto-pianificazioni che hanno il loro numero nomi del proprio spazio per i lavori, vengono skpped interamente # al riavvio se il gruppo completa correttamente, # e può impostare i propri attributi. Pass2 # Lavori pesanti dell'acceleratore. Pass2 Tutte queste possono essere eseguite in PASS2 # Parallelo, nessun danno dividerli su Pass2 # Alias localmente definito: questi sono Pass2 # * non * lo stesso dei lavori sopra. Pass2 # possono essere impostati, applicare a tutti i livelli nidificati. utile all'interno di gruppi. # # Ad esempio, estrarre il contenuto di alcuni file #, elaborarli, quindi ripulisci i risultati #. Ogni gruppo utilizza il proprio alias # per gestire i file. Maxjob% 0 # Forcelle illimitate dopo # Due via solo per il gruppo After Group Prior # Alias predefinito all'interno del Gruppo dopo Durante Priore # $ MGR-> Estrai ('file1') Priore # $ MGR-> Estratto ('file2') DURANTE # $ MGR-> Processo ('file1') DURANNO # $ MGR -> Process ('file2') dopo # $ MGR-> Cleanup ('file1') dopo # $ MGR-> Cleanup ('File2') # Assegnare attributi specifici del lavoro - principalmente a Controllo # La verbosità o i lavori di flag come installazione degli orari ad-hoc. Questo ~ ad_hoc # predefinito per tutti gli attributi è 1 questo ~ verbose 0 # o aggiungere il tuo valore personale che ~ Verbose 2 # come avresti potuto immaginare ormai, testo dopo # un segno di hash non scappato è considerato come un commento.End) ; My $ outcome = eval {$ manager-> prepara (@ArGZ); # Parase, convalidare la coda. $ manager-> Convalida; # Check for Deadlocks $ Manager-> Esegui; # Fai il atto "la fine"} o morire $ @; o solo: $ manager-> prepara (@Argz) -> Convalida-> Esegui; # Se si desidera ricavare un nuovo oggetto da un # nuovo e di usarlo per eseguire i lavori di queo o aggiungi # ad_hoc (ad esempio, E.G., classe di fabbrica), quindi è necessario condividere la coda per il nuovo oggetto. Sub Derive_new_Object {My $ MGR = Shift; My $ Derivato = $ MGR-> Nuovo (@_); $ mongr-> share_queue ($ derivato); $ Derivato} # A questo punto l'oggetto derivato utilizza # la stessa coda del nome di $ Gestione originale (non un clone, lo stesso). L'esecuzione di # con $ derivata avrà lo stesso effetto # sulla coda di $ manager. $ deriva-> Esegui; Requisiti: · Perl.


Parallelo :: dipende Software correlato