Wypowiedzi
-
jesli chcesz miec w danej chwili n watkow to:
1. uruchamiasz n watkow,
2. dajesz im zajecie, by przypadkiem sie nie skonczyly.
jesli n jest duze (kilkaset lub wiecej) moga wejsc zabawy ze stosem i inne ustawienia (zeby 1 watek mial mniej zasobow, bo wysycisz zasoby dla aplikacji).
ale to zalezy od konfiguracji systemu, na ktorym uruchamiasz proces. -
na ssawki jeszcze nie dane mi bylo pojsc. zawsze cos mi wyskakuje :/
co do dzialanosci klubu... hm.... nie mam pojecia jak chcesz zmobilizowac innych do 'czynnego udzialu'.
moja rada jest taka: olej innych i zacznij dzialac sam. byc moze z czasem, gdy sie rozkrecisz powstanie wokol ciebie male grono osob skupionych na owym 'czynnym udziale' - cos w stylu 'stalych wspolpracownikow'. -
a dokladniej o co ci chodzi?
w katowicach (i okolicy) jest niemala ekipa atarowska, czasem sa spotkania w city rocku (na sokolskiej). na stronach czysto atarowskich (http://atariarea.krap.pl/, http://atarionline.pl) ruch jest caly czas. -
posredniaki tak juz maja - same nic nie powiedza, a od ciebie wezma nawet numer buta.
-
Aby mieć możliwość przeczytania tego posta musisz być członkiem grupy RYNEK IT
-
najlepiej by bylo zrobic x procesow potomnych i kazdy z y watkami. do tego pamiec dzielona i mozemy szalec.
ale najpierw niech kolega watki opanuje.
z drugiej strony - trzeba jakos okreslic ile faktycznie ma byc tych klientow jednoczesnie (to pewnie gdzies w zalozeniach projektu jest), bo jak sie uprzec to mamy 30k procesow, a kazdy z kilkuset watkami. tylko czy to naprawde jest potrzebne? -
wykrycie zakonczenia wszystkich watkow mozna zrobic na kilka sposobow:
1. koncepcja (chyba) posix only - uzywasz jakiejs zmiennej (licznika) typu sig_atomic_t i obrabiasz ja w funkcjach/makrach pthread_cleanup_pop i pthread_cleanup_push,
2. ustawiasz jakis semafor zliczajacy, na ktorym zliczasz pojawiania sie i znikania kolejnych watkow (a licznik zmieniasz na poczatku i koncu glownej funkcji watka).
3. po utworzeniu watka pamietasz jego uchwyt i probojesz za kazdym razem pobrac status konca watka. jak sie uda, to watka juz nie ma. jak sie nie uda - najpewniej jeszcze sie kreci.
4. oraz rozne wariacje/mieszanie powyzszych metod oraz kilka innych, bardziej zamieszanych.
jest tutaj tylko 1 problem - prawdopodobnie na wejsciu do petli nie bedzie dzialajacych watkow, wiec musisz tutaj jakas logike dac, zeby na samym starcie nie zakonczyc petli.
co do mnostwa watkow - jak bedziesz operowal rozmiarem stosu (zmniejszal go), to osiagniesz wieksza ilosc watkow - ale jak dasz za maly stos, to bedziesz mial wyloty.
zwykle sie to robi tak, ze kazdy watek obsluguje wiele polaczen. -
otwarte unixoidy (linux, *bsd, opensolaris) mysle, ze gdyby chcial to moglby - choc diabel moze byc ukryty w jakims punkcie licencji.
z zamknietymi systemami jest chyba wiecej babrania sie w umowach z producentem. -
tak.
-
da sie.
jesli chcesz recznie manipulowac libami (a nie linkowac sie na stale) to uzyj np. qtsql. -
a ja sobie tak mysle, ze zamiast cisnac w certyfikaty (ktorych to wiarygodnosc/wartosc ciezko ocenic), lepiej udac sie na strone sourceforge.net (lub podobna), rozejrzec sie, i aktywnie wziasc udzial w jakims projekcie.
osobiscie wolalbym przyjac do pracy studenta ktory udzielal sie w jakim opensource'owym projekcie (lub w kilku) - nawet jesli temat projektu bylby totalnie odjechany, niz goscia, ktory ma tone certyfikatow - o ktorych czesto wlasnie sie dowiem, ze istnieja. -
ja byl bym ostrozniejszy w ocenie ludzi z doswiadczeniem, ktorzy czegos tam w c++ nie potrafia. wszystko zalezy, gdzie oni pracowali, i jakie zwyczaje tam panuja. np. google jesli moze, to nie przeciaza operatorow. nie uzywa tez paru innych rzeczy z tego jezyka. i podejrzewam, ze po kilku latach w googlu ichni programista nie bedzie potrafil przeciazac. czy to oznacza, ze nie zna c++? dla jednych pewnie tak, dla mnie nie.
reasumujac jestem zdania, ze aby dobrze (ale to _naprawde_ dobrze) znac c++ nalezy samemu napisac kompilator c++. -
odnosnie wczesniej wspomnianych niedomagan sprzetowych.
sa rozne platformy sprzetowe. na tych prostszych nie uzywa sie liczb zmiennoprzecinkowych (np. double), nie uzywa sie std::string, tylko char*, bo to mniej pamieci zajmuje itd... -
narzedzia kontroli wersji jako mechanizm backupu sa bardzo wygodne. czesto tez administratorzy wykorzystuja tego typu narzedzia do backupowania stanu systemu (np. caly katalog /etc).
-
Ja lubie stale stringi pakowac w #define zamiast w static const char*.
Potem moge sobie uzyc sizeof() zamiast strlen(). -
Valgrind ma ta wade, ze spowalnia wykonywanie kodu, dzieki czemu niektore waskie gardla w komunikacji wielowatkowej sie poszerzaja i program dziala dobrze. Odpalisz potem taki program bez valgrinda i po tygodniu watki sie zakleszcza na mutexach.
-
jak jest taka sama wersja postgresa to te narzedzia pomoga: pg_dump/pg_dumpall (zrzut), psql (wrzut).
zrzutu nie rob jako sekwencji insertow - import moze potrwac wieki. -
taka cene mozna rozpatrywac na kilka sposobow:
1. ktos kolekcjonuje dany sprzet (podobnie jak inni kolekcjonuja stare samochody, obrazy, wina, ...) i ta cena nie jest dla niego odstraszajaca - moze to jest cena jego (jej?) marzen.
2. mozna potraktowac ten zakup jak inwestycje. dzis poszlo okolo 1.7 kpln, niemniej pomysl, ile ten sprzet bedzie wart za 10 lat. -
1. Wykresy (jako grafike) mozna generowac za pomoca PHP,
2. Rozwiazanie z posrednikiem w postaci czegokolwiek pomiedzy apletem a sql-em (np. cgi/php/...) ma tez ta zalete, ze jest duzo bezpieczniejsze dla samej bazy. Malo ktory admin wsyatwi serwer sql na zewnatrz sieci. Chyba, ze to tylko w zaufanej sieci lokalnej ma byc.Rafał Ciepiela edytował(a) ten post dnia 05.09.08 o godzinie 20:33