C# – jednoduchá ukázka na threading, eventy a delegáty

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;

namespace threading_delegates_events
{
    class Program
    {

        static void Main(string[] args)
        {
            EventHolder myClass = new EventHolder();
            //
            myClass.MyEvent += new EventHolder.MyDelegate(Pok.pokMethod); //nemusíme mít instanci objektu,
            protože methoda je statická
            //pokud bychom zdvojili předchozí řádek, tak opravdu dojde ke spuštění celé metody
            pokMethod dvakrát se vším všudy včetně čekání
            myClass.MyEvent += new EventHolder.MyDelegate(myClass_MyEvent);

            Thread second = new Thread(new ThreadStart(delegate
            {
                while (true)
                {
                    Console.WriteLine("Tock.");
                    myClass.MyMethod();
                    Thread.Sleep(3000); // pause execution of the current thread for 3 seconds 
                }
            }));

            second.Start();

            while (true)
            {
                //Console.WriteLine("Tick.");
                Thread.Sleep(1400); // pause execution of the current thread 
            }
        }

        static void myClass_MyEvent()
        {
            Console.WriteLine("Event subscriber 1 reporting.");
        }
    }

    class EventHolder
    {
        public delegate void MyDelegate();
        public event MyDelegate MyEvent;

        public void MyMethod()
        {
            Console.WriteLine("My method.");

            MyEvent();
            Console.WriteLine("Event has been raised 2000 ms ago.");
        }
    }
    class Pok
    {
        public static void pokMethod()
        {
            Console.WriteLine("Subscriber will stop the thread for 2 sec.");
            Thread.Sleep(2000);
            Console.WriteLine("Event subscriber 2 reporting.");
        }
    }
}


Pokud pochopíte jak program vyvolává eventy a pouští jim asociované funkce(přes delegáty), tak si můžete odkomentovat řádek 37 a uvidíte i ve výstupu, že během toho všeho ještě v pozadí běží druhý thread.

The Blaster teaser trailer

The Blaster je akční běčko v režii Roberta Vrby. Unikátní je na něm taky třeba to, že kameru dělám výhradně jen já. Robert neměl o víkendu co dělat, tak vám můžu aspoň nasdílet trailer z jeho youtube kanálu.
Teaser trailer:

On Rick Santorum


Spread Santorum! We need to make this video viral!

17.listopadu

March With Us from Wake the Beast on Vimeo.

My s Vierzbowskim asi pojedeme ten den do Prahy fotit demnostrace, tak jsem zvědav, jestli tam nějaké occupiery uvidíme. Snad.

Jednoduchá implementace Fibonacciho posloupnosti v C#

Ale jen pro případ, že by jste někdy hledali jednoduchou jakž takž funkční implementaci Fibonacciho posloupnosti. Vstup musí být v rozmezí 3 až 4,294,967,295, jinak nefunguje. Jen takový malý výstup z jednoho pohovoru.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace fibonaci
{
    class Program
    {
        static void Main(string[] args)
        {
            int howMany;
            string outputStr = "";
            howMany = int.Parse(Console.ReadLine());
            foreach (var number in Fibonaci.GetFibArray(howMany))
            {
                outputStr = outputStr + number + ",";
            }
            Console.WriteLine(outputStr);
            Console.ReadKey();
        }
    }

    public static class Fibonaci
    {
        public static UInt64[] GetFibArray(int n)
        {
            int i;
            i = 2;

            UInt64[] Out = new UInt64[n];
            Out[0] = 1;
            Out[1] = 1;

            while (i<n)
            {
                Out[i] = Out[i - 2] + Out[i - 1];
                i++;
            }
            return Out;
        }
    }
}

Brojení proti atomovým elektrárnám

Nedávno v Německu vypnuly několik jaderných elektráren. Myslím si, že to nestačí. Pro dosažení maximální bezpečnosti na Zemi bychom měli zavést celoplošný zákaz používat oheň. Oheň, který se vymknul kontrole má na svědomí již tolik obětí na životech i materiálních, že bude nejjistější od něj kompletně upustit.
Stejně tak se musí přestat využívat těkavé látky, protože způsobují velké materiální a ekologické škody-jak se tomu stalo například v Semtíně v minulém týdnu. Zároveň v rámci EU zakažme Nobelovu cenu, jelikož to byl právě Nobel, kdo tyto škodypáchající věci vymýšlel.
Tak myslím, že by se dalo najít ještě mnohem více věcí, které jsou spíše ke škodě než k užitku, ať už jde o zbraně, auta, letadla, počítače nebo Václava Klause.

Já končím, rozebírám svůj počítač a z komponent sestrojím past na lesní zvěř a jdu lovit. Samozřejmě, že úlovek sním syrový, abych náhodou nezapálil nějakou nebohou travičku okolo. Lovu zdar.

Must-have aplikace pro Nokii N900

Jsem celkem hrdým majitelem Nokie N900 a chtěl bych se s dalšími podělit o můj seznam nejdůležitějších aplikací. Nečekejte tam žádný z mnoha komunikačních protokolů-já si bohatě vystačím se Skypem a Facebookem. Takže zde je seznam:

  1. Comunity SSU- díky tomuto bude moci váš systém updatovat systémové soubory OS z repozitářů, které opečovává komunita kolem N900ky. Jedná se o vcelku zdařilé úpravy systému, které odstraní občasné zasekávání systému při používání více aplikací naráz
  2. Flashlight- nutnost, asi není třeba více rozepisovat-pouze snad dodatm že pokud vás stejně jako mě prudí, že při každém otevření krytky se hned spustí fotoaparát načřež ho musíte zavřít a teprve potom zvolit flashlight přes status menu, tak si stáhněte aplikaci Camera Lens Launcher
  3. FM Radio- rádio moc neposlouchám, proč taky, když přímo v mobilu můžete mít 10ky GB hudby, ale člověk nikdy neví…
  4. Evince-integrovaný PDF prohlížeč od Nokie je sice svižný a rozhodně není nijak zabugovaný, ale chybí mu naprosto nejpodstatnější featury typu: pamatování posledních otevřených souborů a pamatování si strany, kde jste naposledy skončili se čtením. Není nic otravnějšího, než při každém znovuotevření knihy musíte zadávat stranu kam se chcete přesunout(kde jste naposled skončily). Popřípadě vždy listovat pro soubor. Díky PDF prohlížeči Evince všechen hassle odpadne, hurray!
  5. Powatool- tohle není moc featurami nabitá utilitka, ale umí vás zbavit trapné animace Nokia rukou po každém startu přístroje-tedy další must-have!
  6. Extra Decoders support
  7. AdBlock Plus- znáte z Mozzily na PC
  8. FB Reader- nejlepší e-book reader
  9. Headphone daemon – automaticky zapauzuje muziku když odpojíte sluchátka-k nezaplacení, pokud dojdete pozdě na přednášku a chcete jen odpojit sluchátka a položit mobil na stůl a už se o něj nestarat
  10. Subtitles support- explicitní, funguje moc hezky až na zobrazování českých znaků
  11. Tweak flash plugin version-i když na tomto telefonu doopravdy flash nejde patchnout na vyšší verzi, tak lze změnit to jak se telefon tváří. Takže už vás nebude otravovat hláška, ať upgradujete na novější verzi flash playeru a u 99% flash obsahu to stejně nemá vliv, protože novější verze flashe mají akorát pár přidaných featur, se kterými si stejně jen tak nepotkáte na webu.
  12. Firefox pro N900-integrovaný webový prohlížeč MicroB je sice velice kvalitní, ale prohlížení webu přes mobil je velice ošemetná věc a mnoha lidem více vyhovuje spíše alternativní Firefox. Pro mě je to tak na hraně, ale jsem už více zvyklý na MicroB.

Vím, že Hildon application Manager(standartní správce aplikací na N900) je velice pomalý, obzvláště co se týče zjišťování kompletního obsahu repozitářů, ale Faster application manager zatím nemám dostatečně otestovaný, tak jsem ho nezahrnul, i když pokud by opravdu fungoval jak má, tak je to další položka na seznamu.

Užívejte své Nokie n900 produktivně!

Malá předpověď

Arabské země jsou ve varu. Demonstranti jsou všude chudí a jejich životní situace i politické postoje vyostřuje neustále se zvyšující cena základních potravin. Chtějí sesadit autoritářské vůdce a jejich režimy.Většina těchto proamerických režimů skončí a USA příjdou o kontrolu ropné produkce, pak je jen otázkou času než si uvědomí, že vlastně chtějí obchodovat ropu v jiné měně-třeba Čínském Juanu. Režimy se brání, shánějí více jídla, snižují daň z importu jídla, rozdávají nejchudším peníze-nic z toho nebude platné.
Rusko již zakázalo exportovat jídlo.
A cena ropy stoupá…tím tlačí cenu absolutně všeho také výš. Fakt, že se ropa obchoduje v dolarech neúměrně posiluje americkou ekonomiku-vytváří umělou poptávku po dolaru.
Ekonomiky všude po světě vykazují velké růsty. Co je to růst? Více jsme vyrobily, firmy mají více peněz.Některé firmy mají tolik peněz, že neví co s nimi. Firma apple nebo google drží obří aktiva. Nevytvářejí nová pracovní místa-aspoň ne dle toho kolik by si mohli dovolit, ale střádají peníze. Tím zase uměle zvyšují a nafukují cenu dolaru jako oběživa. Nezaměstnanost ve většině států světa atakuje dlouholetá maxima-v Rusku nebo i v USA přestože Ameriská vláda tvrdila opak.

Až dostoupí cena ropy do určité výše, která bude asi někde poblíž výše z roku 2008-tedy +-150 dolarů za barel, příjde další vlna krize, tentokrát bezpochyby mnohem horší jak v roce 2008. Nevím, jestli to bude znamenat pouze hyperinflaci pro dolar nebo úplný celosvětový kolaps, ale určitě to nebude nic hezkého. Co můžeme dělat do té doby? Sledovat cenu ropy a nakupovat zlato, stříbro….

Náš příspěvěk do videosoutěže Masarykovi Univerzity o důvod proč MU…taky ten slogan moc nechápu :-)

Jde o menší facebookovou soutěž, které se Přemysl Jež, jeden můj chlebodárce chtěl zúčastnit.

That’s the music I like!

←Older