Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy
počítačové znalosti >> Systémy >> unix >> .

Unix Domain Sockets Tutorial

Unix poskytuje technológiu známu ako domény zásuvky s cieľom uľahčiť komunikáciu medzi rôznymi procesmi , a dokonca aj rôzne aplikácie . Jedným zo zvláštností zásuvky domény Unix je , že to vyzerá , že aplikácia bude súbor . Avšak , zásuvka sa nikdy neukladajú na pevný disk a jeho miesto v systéme súborov sa jednoducho používa ako marker . Dáta je možné zapisovať a čítať zo zásuvky Unix domény od väčšiny hlavných programovacích jazykov , ktoré podporujú zásuvky . Ruby je proces obzvlášť ľahko , čo sú pojmy , ktoré majú byť preukázaná , bez toho aby boli zakryté plné zložitosti socket programovanie v C + + . Návod dovolená 1

Otvoriť dva nové dokumenty svojom obľúbenom textovom editore . Ak chcete udržať veci priamo , choďte do toho a ušetrite prvý s názvom " udsServer.rb " a druhý s názvom " udsClient.rb . " Ako ste si možno podozrenie , server sa postará o vytváranie a písanie do zásuvky a klient sa pripojí do zásuvky a prijímať správy z prvej
2

vložte nasledujúci do usdServer.rb . :

# /usr /bin /ruby

vyžadujú " zásuvku " Spojené

s = UNIXServer.open ( " /mytestsocket " )

klient = y . prijímať

client.puts " Ahoj , môj drahý priateľovi . "

s.close

File.unlink ( " /mytestsocket " ) klipart

kód vykonáva nasledovné operácie : prvá , to hovorí váš operačný systém Unix , že sa jedná o skript Ruby . Možno budete musieť zmeniť tento riadok , ak váš unixový operačný systém nainštalovaný Ruby do iného adresára . Môžete nájsť adresár zadaním " , ktoré ruby " do terminálu .

Ďalej knižnica zásuvka je načítaný. Potom , UnixServer vytvorí socket v súbore " mytestsocket . " Tento súbor bude skutočne vidieť v BASH terminálu , ak vám záleží vyzerať , keď nebudete môcť čítať a písať z nej . To potom čaká na ďalší skript pre pripojenie , a keď to robí , vysiela príjemnú správu . Napokon, to zavrie zásuvku a " odpojí " zásuvky zo systému súborov .

To je pre server , teraz je čas na napísanie klienta .
3

vložte nasledujúci do dokumentu udsClient.rb :

# /usr /bin /ruby

vyžadujú " zásuvku "

s = UNIXSocket.open ( " /mytestsocket " )

kladie s.readline

s.close

Opäť platí , že prvý riadok hovorí , Unix , čo robiť so svojím kódom a na druhom riadku načíta knižnicu soketov . Potom , zásuvka sa otvorí do rovnakého " súbor " , ktorý kód je server pomocou . Správa prečítaná , a pripojenie do zásuvky zatvorenej
4

Otvorte terminál a zadajte nasledujúci príkaz : .

Ruby udsServer.rb

Nič sa nestane , pretože server je v súčasnej dobe sedí , čaká na váš klientsky program pre pripojenie . Uistite sa , že opustiť tento terminál otvorený .
5

Otvorte ďalšiu kópiu vášho terminálu a usporiadať okná , takže môžete vidieť obe svorky naraz . Zadajte nasledujúci príkaz :

ruby udsClient.rb

Mali by ste okamžite vidieť okno servera exit a klientské okno zobrazí priateľské správy odoslané na ňu serverom . Ak sa pozriete na súbor zásuvky , bude teraz preč .

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené