Vlákna   otázka

VB.NET, Threading

Dobrý den,

začínám s programováním (píšu kravinky, které mě zrovna napadnou a 3/4 kódu tvoří scripty odsud...).

Napsal jsem takovou aplikaci, která vysílá požadavky na server a přijímá odpovědi (nečekaně :-D). Ale těch požadavků je za sebou několik. I pár tisíc. Trvá dlouho než se program připojí, získá odpověď. Potřeboval bych to urychlit. Napadlo mě, že by se dalo vyslat více požadavků najednou. Počet požadavků by se měl dát regulovat abych server nepřetěžoval.

Našel jsem článek, ale nejsem z něho moudrej. Píše se tam cosi o procesorech...

Dá mi někdo jednoduchý návod jak to provést, kterej bych pochopil? Jde to vůbec nějak jednoduše?

Předem díky za odpověď.

Jirka

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Tož ... jde, ale zrovna procesy a vláky bych se při učení jazyka zabýval až tehdy, když už budu znát základy. Mnohem dřív například budete schopen zjistit, proč ta odpověď serveru trvá, a pak si jako cvíčo můžete zkusit ty požadavky na server řadit do nějaké fronty. Až se Vám to povede, budete teoreticky mnohem připravenější učit se vlákna, jejich synchronizaci a takové perličky.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

...a hlavně, s vlákny je dost pokročilých problémů. Ty ještě na své úrovni neumíte příliš dobře odladit. Vlákna doporučuji nasadit pouze v krajních případech, kdy je to opravdu nutné - tady ne...

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Díky oběma, zkusím se program podívat, minimalizovat kód...

K té frontě: Vysílám zkusmo požadavky na

www.xxx.xx/1.html

www.xxx.xx/2.html

www.xxx.xx/3.html

=> adresy zkouším postupně jednu po druhé

Počet adres je omezen a zkouším to v cyklu Do Loop.

Nechápu jakou frontu myslíte..požadavky jdou za sebou..je to ono?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Co se týká té fronty, myslel jsem generickou třídu System.Collections.Generic.Queue(Of T). Více o ní naleznete v tomto článku: http://www.vbnet.cz/blog-clanek--178-net... . Tato fronta lze potom procházet asynchroně (bez 100% zatížení CPU) za pomoci třídy WebClient (DownloadStringAsync)...

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback