abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
včera 21:21 | Nová verze Ladislav Hagara | Komentářů: 0
včera 11:44 | Zajímavý projekt

Na Indiegogo byla spuštěna kampaň na podporu herní mini konzole a multimediálního centra RetroEngine Sigma od Doyodo. Předobjednat ji lze již od 49 dolarů. Požadovaná částka 20 000 dolarů byla překonána již 6 krát. Majitelé mini konzole si budou moci zahrát hry pro Atari VCS 2600, Sega Genesis nebo NES. Předinstalováno bude multimediální centrum Kodi.

Ladislav Hagara | Komentářů: 0
včera 00:10 | Nová verze

Byla vydána verze 4.7 redakčního systému WordPress. Kódové označením Vaughan bylo vybráno na počest americké jazzové zpěvačky Sarah "Sassy" Vaughan. Z novinek lze zmínit například novou výchozí šablonu Twenty Seventeen, náhledy pdf souborů nebo WordPress REST API.

Ladislav Hagara | Komentářů: 1
6.12. 12:00 | Zajímavý projekt

Projekt Termbox umožňuje vyzkoušet si linuxové distribuce Ubuntu, Debian, Fedora, CentOS a Arch Linux ve webovém prohlížeči. Řešení je postaveno na projektu HyperContainer. Podrobnosti v často kladených dotazech (FAQ). Zdrojové kódy jsou k dispozici na GitHubu [reddit].

Ladislav Hagara | Komentářů: 24
6.12. 11:00 | Bezpečnostní upozornění

Byly zveřejněny informace o bezpečnostní chybě CVE-2016-8655 v Linuxu zneužitelné k lokální eskalaci práv. Chyba se dostala do linuxového jádra v srpnu 2011. V upstreamu byla opravena minulý týden [Hacker News].

Ladislav Hagara | Komentářů: 2
5.12. 22:00 | Komunita

Přibližně před měsícem bylo oznámeno, že linuxová distribuce SUSE Linux Enterprise Server (SLES) běží nově také Raspberry Pi 3 (dokumentace). Obraz verze 12 SP2 pro Raspberry Pi 3 je ke stažení zdarma. Pro registrované jsou po dobu jednoho roku zdarma také aktualizace. Dnes bylo oznámeno, že pro Raspberry Pi 3 je k dispozici také nové openSUSE Leap 42.2 (zprávička). K dispozici je hned několik obrazů.

Ladislav Hagara | Komentářů: 6
5.12. 06:00 | Zajímavý software

OMG! Ubuntu! představuje emulátor terminálu Hyper (GitHub) postavený na webových technologiích (HTML, CSS a JavaScript). V diskusi k článku je zmíněn podobný emulátor terminálu Black Screen. Hyper i Black Screen používají framework Electron, stejně jako editor Atom nebo vývojové prostředí Visual Studio Code.

Ladislav Hagara | Komentářů: 50
5.12. 06:00 | Zajímavý článek

I letos vychází řada ajťáckých adventních kalendářů. QEMU Advent Calendar 2016 přináší každý den nový obraz disku pro QEMU. Programátoři se mohou potrápit při řešení úloh z kalendáře Advent of Code 2016. Kalendáře Perl Advent Calendar 2016 a Perl 6 Advent Calendar přinášejí každý den zajímavé informace o programovacím jazyce Perl. Stranou nezůstává ani programovací jazyk Go.

Ladislav Hagara | Komentářů: 10
3.12. 16:24 | Nová verze

Byla vydána Mageia 5.1. Jedná se o první opravné vydání verze 5, jež vyšla v červnu loňského roku (zprávička). Uživatelům verze 5 nepřináší opravné vydání nic nového, samozřejmě pokud pravidelně aktualizují. Vydání obsahuje všechny aktualizace za posledního téměř půldruhého roku. Mageia 5.1 obsahuje LibreOffice 4.4.7, Linux 4.4.32, KDE4 4.14.5 nebo GNOME 3.14.3.

Ladislav Hagara | Komentářů: 17
3.12. 13:42 | Pozvánky

V Praze probíhá konference Internet a Technologie 16.2, volné pokračování jarní konference sdružení CZ.NIC. Konferenci lze sledovat online na YouTube. K dispozici je také archiv předchozích konferencí.

Ladislav Hagara | Komentářů: 0
Kolik máte dat ve svém domovském adresáři na svém primárním osobním počítači?
 (32%)
 (24%)
 (29%)
 (8%)
 (5%)
 (3%)
Celkem 785 hlasů
 Komentářů: 50, poslední 29.11. 15:50
Rozcestník
Reklama

Dotaz: Presnost metody Sleep v Jave?

16.10.2006 22:04 pete
Presnost metody Sleep v Jave?
Přečteno: 522×
Programujem hru pod Javou(eclipse, linux mandriva 2007) a pre uspanie pouzivam metodu Thread.Sleep. Problem je v tom ze pri 1ms sa program uspi na 5ms, z toho mi vypliva ze najmensie rozlisenie je 5ms. Da sa to nejak obist?... Potreboval by som presnost na 1ms...

Odpovědi

16.10.2006 22:13 thingie
Rozbalit Rozbalit vše Re: Presnost metody Sleep v Jave?
No, nejsem si jistý, jestli to má přesně vliv, ale zkusil bych v jádře nastavit volbu HZ na 1000.
16.10.2006 22:14 thingie
Rozbalit Rozbalit vše Re: Presnost metody Sleep v Jave?
(což samozřejmě nebude fungovat pro lidi, kteří si vlastní kernel kompilovat nechtějí (výchozí volba je 250, to by mohlo těm pěti ms zhruba odpovídat), měl by ses obejít bez toho)
16.10.2006 22:20 pete
Rozbalit Rozbalit vše Re: Presnost metody Sleep v Jave?
Nedalo by sa to nejakym sposobom obist aj mimo jadro?.. Alebo nastavenim v JVM?
16.10.2006 22:25 thingie
Rozbalit Rozbalit vše Re: Presnost metody Sleep v Jave?
Jaké výsledky dostáváš pod Windows nebo jiným systémem?

Javadoc popisuje, že chování je závislé na systémových časovačích a plánovačích. Takže snadno to obejít asi nebude lehké, pokud to bude vůbec možné.
16.10.2006 22:28 thingie
Rozbalit Rozbalit vše Re: Presnost metody Sleep v Jave?
Jinak, když zkusím Google, přesností sleepu se zabývají zejména audio aplikace. Nevím, proč by si hra s přesností na jednu dvě desítky milisekund nevystačila.
16.10.2006 22:31 cronin | skóre: 48
Rozbalit Rozbalit vše Re: Presnost metody Sleep v Jave?
Asi Ta nepotesim, ale nebude to fungovat.

Kazdy operacny system updatuje svoj cas, ktory prezentuje user space-u, s urcitou granularitou. Tato granularita je radovo v desiatkach milisekund. T.j. cas sa nemeni milisekundu po milisekunde, ale dajme tomu kazdych 20 milisekund sa zvysi o 20 milisekund. Inak povedane, metoda System.currentTimeMillis() bude 20 milisekund vracat to iste cislo. Navyse, ten interval nie je vzdy rovnaky. Pred casom sme robili testy spravania sa operacnych systemov v tomto ohlade, a dosli sme k nasledovnemu: FreeBSD v priemere updatovalo cas vo velmi castych itervaloch (menej ako 10 milisekund), ale malo velky rozptyl v itervaloch updatov (az do 100 milisekund). Linux mal updaty pomalsie (20 - 30 milisekund), relativne stabilne. Windows updatoval takmer vylucne po 15 alebo 30 milisekundach. Solaris 9 aj 10 mal v priemere itervaly najdlhsie, ale velmi stabilne, okolo 40 milisekund, presne cislo si nepamatam.

Toto spravanie sa asi da ovplyvnit konfiguraciou kernelu toho ktoreho systemu. V reale ale sleep kratsi ako niekolko desiatok milisekund nema zmysel.

Btw, pod akou verziou Javy robis? Ak pod 1.4, tak si rozbal src.zip a pozri si, ako pracuje metoda java.lang.Object.wait(long, int). Budes prekvapeny. Neprijemne prekvapeny. Ale ziskas realisticky pohlad. Hold, od real-time OS sme este daleko.
16.10.2006 22:47 cronin | skóre: 48
Rozbalit Rozbalit vše Re: Presnost metody Sleep v Jave?
Nasiel som vysledky, takze casy updatov:
SunOS 5.9/5.10      : 10ms
Linux 2.4.21        : 20ms
Windows 2003 Server : 16ms
FreeBSD 6.0         :  2ms
Opravujem este jeden udaj: najstabilnejsie intervaly boli v pripade Linuxu.
16.10.2006 22:53 pete
Rozbalit Rozbalit vše Re: Presnost metody Sleep v Jave?
Tak taku dlhu odpoved som necakal :)... dika..

Spominal si System.currentTimeMillis()... A k tomu by som mal dotaz : A co funkcia System.nanoTime() od verzie 1.5?... Ta vracia cas v nanosekundach. A pocitam s tym ze to nevracia System.currentTimeMillis()*1000000.
16.10.2006 23:14 cronin | skóre: 48
Rozbalit Rozbalit vše Re: Presnost metody Sleep v Jave?
System.nanoTime() je v Jave 5 nativna, takze podla javovskych zdrojakov sa neda povedat, co robi skutocne. Chcelo by to pozriet sa na zdrojaky JVM:
public static native long nanoTime();
Definicia Object.wait(long, int) sa nezmenila:
public final void wait(long timeout, int nanos) throws InterruptedException {
        if (timeout < 0) {
            throw new IllegalArgumentException("timeout value is negative");
        }

        if (nanos < 0 || nanos > 999999) {
            throw new IllegalArgumentException(
				"nanosecond timeout value out of range");
        }

	if (nanos >= 500000 || (nanos != 0 && timeout == 0)) {
	    timeout++;
	}

	wait(timeout);
    }
Takze ak to ma nanosekundy vacsie ako 500000, tak zvysi wait o milisekundu. Ak to ma nanosekundy nenulove a milisekundy nulove, waituje to aspon obligatnu jednu milisekundu.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.