Prostor n-tic
Tuple space je implementace paradigmatu asociativní paměti pro paralelní/ distribuované výpočty. Poskytuje úložiště souběžných n-tic. Můžete si například představit skupinu procesorů, které počítají data a ukládají je do n-ticového prostoru, a skupinu procesorů, které vyhledávají v datech vzor a používají je. Prostor n-tic si lze představit jako druh distribuované paměti .
N-ticové prostory jsou teoretickým základem jazyka Linda .
Implementace n-ticových prostorů byly vyvinuty pro Javu , Smalltalk , Ruby , TCL , Python , Lua , Lisp a Prolog .
Prostory objektů
JavaSpaces
JavaSpaces je služba, která poskytuje distribuovaný mechanismus pro sdílení a koordinaci objektů Java. Používá se k uložení stavu distribuovaného systému a implementaci distribuovaných algoritmů .
Příklad použití
// Vstupní třída
public class SpaceEntry implementuje Entry
{
public final String message = "Ahoj světe!" ;
public Integer count = 0 ;
public String service () {
počet = počet + 1 ;
zpětná zpráva ;
}
public String toString () {
return "Pocet: " + pocet ;
}
}
// Ahoj světe! server
public class Server
{
public static void main ( String [] args ) vyvolá výjimku
{
SpaceEntry entry = new SpaceEntry (); // Vytvořte vstupní objekt
JavaSpace space = ( JavaSpace ) space (); // Vytvořte prostor objektů
// Zaregistrujte se a zapište vstup do prostoru
prostoru . zápis ( vstup , null , Pronájem . NAVŽDY );
// Pauza na 10 sekund a poté načtěte položku a zkontrolujte její stav.
vlákno . spánek ( 10 x 1000 );
SpaceEntry e = mezera . read ( new SpaceEntry (), null , Long . MAX_VALUE );
Systém . ven . println ( e );
}
}
// Klient
public class Klient
{
public static void main ( String [] args ) vyvolá výjimku
{
JavaSpace space = ( JavaSpace ) space ();
SpaceEntry e = mezera . take ( new SpaceEntry (), null , Long . MAX_VALUE );
Systém . ven . println ( e.service ( ) ); prostor . napsat ( e , null , Pronájem . NAVŽDY ); } }
Viz také
Odkazy