dotnetomaniak.pl - Artykuły z tagiem C#

Lock free data structures are very handy for concurrent programs especially that the number of cores increases. The benefits of such data structures is that they never acquire a lock, instead they do a form of a spin lock, where a local copy of the data must be stored and exchanged or updated by an processors atomic operation (like "compare and swap" or "fetch and add") only when the global value and the local copy match, otherwise we repeat the whole procedure. Almost every lock free data structure foll...

Tagi: C#
Dziel się z innymi:
[EN] Lock Free Work Stealing Queue | Passion of Programming in .NET

Inne 4262 dni, 6 godzin, 6 minut temu http://badamczewski.blogspo... 70 źrodło rozwiń

W ostatnim poście napisałem kiedy warto korzystać z strong-name. Jeśli ktoś uważnie prześledził screen’y dołączone do postu, być może dostrzegł, że jest tam opcja taka jak “Delayed Signing”. Do czego to służy? Sprawa jest bardzo prosta. Delayed signing po prostu nie używa klucza prywatnego. Taka biblioteka nie zawiera więc poprawnego podpisu cyfrowego a w miejsce jego zawiera same zera. Klucz publiczny z kolei jest wstawiany do biblioteki z tym, że nie jest liczony jej hash. Integralność zatem jest nie...

Dziel się z innymi:
Piotr Zieliński » Czym jest “Delayed signing”?

Inne 4262 dni, 20 godzin, 23 minuty temu pzielinski 125 źrodło rozwiń

Niniejsze rozważania zacznę od następującej anegdoty, która doskonale oddaje ich sedno. Pewna mała dziewczynka przyglądała się mamie przygotowującej pieczeń: - Mamo, dlaczego gdy robisz pieczeń, to zawsze odcinasz końcówki mięsa i wkładasz je po bokach brytfanny? - Bo tak się piecze kochanie. - Ale dlaczego tak się piecze? - Końcówki obcina się, aby mięso lepiej się upiekło. - Mamo, ale przecież i bez tego mięso by się upiekło. - Córeczko, twoja babcia tak piekła, ciocia tak piecze i ...

Źródło: paskol.robi.to
Dziel się z innymi:
Me z .NET tete-a-tete » Zawsze jest warto poddać ocenie, co jest konwencją co … przyzwyczajeniem

Sztuka programowania 4263 dni, 12 godzin, 32 minuty temu PaSkol 162 źrodło rozwiń

Zapewne każdy zna podstawowe gesty ekranów dotykowych. Wiemy też, że każdy telefon z Windows Phone 7 musi spełniać kilka podstawowych wymagań w tej dziedzinie (np. obsługa co najmniej 4 punktów dotyku). Co więcej, w SDK (dokładnie w XNA Framework) znajdziemy wbudowana obsługę pewnych gestów (np. Tap, FreeDrag, DoubleTap, Vertical/HorizontalDrag, Pinch itd). Ale jeśli to dla nas za mało to zakłwsze możemy “zejść” na niższy poziom API i tworzyć własne gesty.

WP XNA 8: Większa kontrola nad gestami (Raw gestures) | Wojciech Poniatowski [PL]

Mobile development 4264 dni, 13 godzin, 8 minut temu poniat 45 źrodło rozwiń

Windows Phone jako jedyna platforma umożliwia tworzenie aplikacji z tzw. Trial‘em. Wiem, ktoś może powiedzieć, że przecież w AppStore czy Android Market też są aplikacje płatne i darmowe. Czym więc różni się Windows Phone? Tym, że możemy stworzyć jedną aplikację, która będzie jednocześnie wersją Trial i pełną, a Windows Phone Marketplace automatycznie zadba o procedurę kupna i podniesienia wersji z darmowej na pełną. W tym poście opiszę moje podejście do tego tematu.

WP XNA 13: Trial | Wojciech Poniatowski [PL]

Mobile development 4264 dni, 13 godzin, 8 minut temu poniat 71 źrodło rozwiń

W dzisiejszym temacie poruszę pewien problem na jaki można natknąć się podczas używania kolekcji obiektów typu wartościowego. Aby pokazać o co dokładnie chodzi zacznijmy od zdefiniowania przykładowej klasy opisującej prostokąt.

Tagi: .Net, C#, indeksator
Dziel się z innymi:
Indeksatory a kolekcje obiektów typu wartościowego « Developer notes

Sztuka programowania 4265 dni, 23 godziny, 11 minut temu psz750 320 źrodło rozwiń

Dziś podstawy języka c#. Wszyscy znają modyfikatory public, protected, private i chętnie z nich korzystają. Modyfikator protected internal jest zdecydowanie mniej popularny a scenariusze użycia jeszcze rzadziej są prawidłowo identyfikowane. Jak sama nazwa mówi protected internal składa się z dwóch poziomów dostępności. W obrębie tego samego assembly zachowuje się jak czysty internal i mamy dostęp do pola tak jakby było one public. Załóżmy, że projekt składa się z dwóch bibliotek. W bibliotece numer A d...

Dziel się z innymi:
Piotr Zieliński  » Modyfikator protected internal

Sztuka programowania 4269 dni, 15 godzin, 58 minut temu pzielinski 219 źrodło rozwiń

W dwóch poprzednich tematach poświęconych Integration Services przedstawiłem wykorzystanie Script Component do tworzenia własnego źródła danych oraz ich transformacji. W dzisiejszym wpisie omówię jego ostatnie zastosowanie – implementację własnego zapisu danych.

SSIS Script Component Destination – własny zapis danych « Developer notes

Inne 4271 dni, 17 godzin, 40 minut temu psz750 149 źrodło rozwiń

W ostatnim poście pisałem o barierze jako rozwiązaniu na uniknięcie problemów z związanych z optymalizacją dokonywaną przez CPU (re-ordering). Kilka postów wcześniej pisałem z kolei o buforowaniu danych i słowie kluczowym volatile. Jeśli nie wiedzie co to jest MemoryBarrier oraz Volatile zachęcam do przeczytania tych wpisów najpierw – bez nich dzisiejszy post będzie kompletnie niezrozumiały. Wiemy, że caching oraz re-ordering może na niektórych architekturach spowodować trudne w analizie błędy. Dziś chc...

Tagi: bariera, C#, lock
Dziel się z innymi:
Piotr Zieliński  » Blokada lock a bariera oraz caching

Sztuka programowania 4271 dni, 23 godziny, 44 minuty temu pzielinski 81 źrodło rozwiń

W .NET istnieje metoda Thread.MemoryBarrier(). W użyciu jest bardzo prosta – nie wymaga przekazania żadnych parametrów. Strona teoretyczna jest jednak bardziej skomplikowana. Przed wyjaśnieniem czym jest Memory Barrier w świecie współbieżnym musimy zrozumieć jak wykonywane są instrukcje przez procesor. Załóżmy, że mamy następujące operacje:a = b +1 c = a +1 d = e +1; W jakiej kolejności zostaną wykonane powyższe operacje? Naturalne wydaje się, że procesor wykona je po kolei. Jednak ze względu na różn...

Tagi: C#, MemoryBarrier
Dziel się z innymi:
Piotr Zieliński » Thread.MemoryBarrier–wprowadzenie

Sztuka programowania 4275 dni, 5 godzin, 34 minuty temu pzielinski 134 źrodło rozwiń

Dziś trochę dla odmiany, nie będę pisał o wielowątkowości a o jednym z podstawowych słów kluczowych w c#, które na szczęście nie jest bardzo popularne – bazując na moim doświadczeniu z różnymi projektami, rzadko widuje je w kodzie. Global przydaje się gdy mamy konflikty z przestrzeniami nazw. Wyobraźmy sobie, że mamy następujący kod (kod  bazuje na dokumentacji MSDN):class Program { publicclass System { } constint Console =7; staticvoid Main() { } } Następnie chcemy w metodzie Co...

Tagi: C#, global
Dziel się z innymi:
Piotr Zieliński » Słowo kluczowe global

Sztuka programowania 4278 dni, 13 godzin, 22 minuty temu pzielinski 242 źrodło rozwiń

W poprzednim temacie opisałem użycie komponentu Script jako własnego źródła danych w Integration Services. Dzisiaj przedstawię kolejne zastosowanie Script Component, a mianowicie tworzenie własnej transformacji danych.

SSIS – Script Component Transformation – własna transformacja danych « Developer notes

Inne 4279 dni, 22 godziny, 44 minuty temu psz750 143 źrodło rozwiń

Witam kolejna cześć artykułu z cyklu “dobre i złe praktyki w c#”. Zapraszam do lektury: http://msdn.microsoft.com/pl-pl/library/dobre-i-zle-praktyki-w-c-sharp–czesc-2.aspx

Tagi: C#
Dziel się z innymi:
Piotr Zieliński » Dobre i złe praktyki w C# – część II

Sztuka programowania 4281 dni, 11 godzin, 20 minut temu pzielinski 390 źrodło rozwiń

Artykuł porusza tematyką związaną z poprawną obsługą Tasków w Windows Phonie. Autor prezentuje w jaki sposób należy wywołać Taski oraz jakie wyjątki powinny zostać przechwycone. Dodatkowo przedstawione zostały scenariusze generujące opisywane błędy.

Dziel się z innymi:
Bezpieczna obsługa Tasks w Windows Phone

Mobile development 4284 dni, 1 godzinę, 13 minut temu Michal Jankowski 60 źrodło rozwiń

Kiedyś na blogu opisywałem kilka implementacji singleton’a przystosowanych do pracy w środowisku wielowątkowym. Jedna z nich opierała się na tzw. double checked locking:publicsealedclass Singleton { privatestatic Singleton mInstance =null; privatestaticreadonlyobject mSync =newobject(); private Singleton() { } publicstatic Singleton Instance { get { if(m_Instance ==null ) { lock(m_Sync) { i...

Tagi: C#, Singleton
Dziel się z innymi:
Piotr Zieliński » Code review: Wielowątkowy singleton

Sztuka programowania 4284 dni, 1 godzinę, 13 minut temu pzielinski 212 źrodło rozwiń

W dzisiejszym temacie omówię tworzenie własnego źródła danych w Integration Services za pomocą skryptu C#. Do tego celu służy komponent Script (Script Component). Po dodaniu go do elementu Data Flow, należy skonfigurować kilka opcji.

SSIS Script Component Source – własne źródło danych « Developer notes

Inne 4284 dni, 18 godzin, 15 minut temu psz750 129 źrodło rozwiń

Introduction Hi Today, I would like to present my concept of making skinnable application in Windows Phone 7.1. Making a skinnable application in Windows Phone might be a little bit tricky. Unfortunately, WP7 doesn't support DynamicResource keyword which is a basic tool for making skins in WPF. In order to overcome this inconvenience I decided to write a SkinManager for WindowsPhone. 2. Base view As I mentioned before, there is no support for using dynamic resources in WP7, therefore, in order to...

Dziel się z innymi:
[EN] Windows Phone - skinnable application ~ Premium Hands

Silverlight 4286 dni, 22 godziny, 50 minut temu premium-hands-net 42 źrodło rozwiń

WPF dostarcza obiekt Freezable. Możemy dziedziczyć po tej klasie aby stworzyć własne obiekty immutable. Ze względów wydajnościowych, można takowy obiekt “zamrozić” i wtedy nie można już go więcej modyfikować – staje się więc immutable.  Przykład:internalclass SampleClass : Freezable { public SampleClass(string text) { Text = text; } protectedoverride Freezable CreateInstanceCore() { returnnew SampleClass(null); } publicstaticreadonly DependencyProperty TextProperty = ...

Tagi: C#, Freezable
Dziel się z innymi:
Piotr Zieliński » Obiekty Freezable

Windows 4286 dni, 22 godziny, 50 minut temu pzielinski 152 źrodło rozwiń

Na moim blogu co jakiś czas można znaleźć informacje dotyczące pisania dobrego oraz złego kodu w c#. Oprócz tego zacząłem pisać serie artykułów związanych z tą tematyką. Wiele informacji w tych artykułach można było znaleźć już wcześniej na moim blogu ale myślę, że ten cykl stanowi dobre dopełnienie i podsumowanie tego wszystkiego co piszę tutaj. Oczywiście artykuły rozszerzają tematykę, oraz zawierają więcej przykładów więc tym bardziej zachęcam do lektury. Dziś została opublikowana pierwsza część: ht...

Dziel się z innymi:
Piotr Zieliński » Dobre i złe praktyki w C# – część I

Sztuka programowania 4290 dni, 6 godzin, 20 minut temu pzielinski 630 źrodło rozwiń

Dziś czas na kolejną metrykę badania kodu  – TypeRank. Wartość metryki jest liczona za pomocą algorytmu Google Page Rank, który jest wykorzystywany przez wyszukiwarki do indeksowania stron. W świecie wyszukiwarek internetowych im większa wartość tym strona znajdzie się wyżej podczas prezentowania wyników. Algorytm bada powiązania między stronami internetowymi. Strona dostaje wyższą ocenę, gdy więcej innych stron wskazuje na nią. Stwierdzono, że skoro do danej strony odwołuje się więcej innych witryn to ...

Tagi: C#, TypeRank
Dziel się z innymi:
Piotr Zieliński » Metryka TypeRank

Sztuka programowania 4293 dni, 7 godzin, 9 minut temu pzielinski 70 źrodło rozwiń

1 2... 47 48 49 50 51 52... 72 73

Najaktywniejsi w tym miesiącu