Monatsarchiv: März 2013

Multithreading in C#, Teil 10: Error Handling in Threads

In Multithreading Anwendungen stellt sich immer wieder die Frage wie das Exception Handling der einzelnen Threads erfolgen soll. Was geschieht wenn in einem ein Thread eine Exception geworfen wird? Wie lässt sich diese abfangen? Wird bei einer unbehandelten Exception nur … Weiterlesen

Veröffentlicht unter .NET, C#, Multithreading | Verschlagwortet mit , , | Kommentar hinterlassen

Inter-Process Communication with Memory-Mapped Files, Part 02: serialisation and thread-safe access

This is the second of two articles about inter-process communication with memory-mapped files. In this first article you have seen how memory-mapped files may be used to transfer data between several processes. This first implementation had two disadvantages. The binary … Weiterlesen

Veröffentlicht unter .NET, C# | Verschlagwortet mit , , , , , | 9 Kommentare

Inter-Process Communication with Memory-Mapped Files, Part 01: transfer a data structure and an object

Within this article I want to show you how an inter-process communication using memory-mapped files may be implemented. Within this first of two articles you will learn the basic concept to transfer a data structure and a data object between … Weiterlesen

Veröffentlicht unter .NET, C# | Verschlagwortet mit , , , , , , , | 4 Kommentare

Multithreading in C#, Teil 9: Lambda Expressions mit Variablen

Die Datenweitergabe an einen Thread lässt sich relativ leicht durch den Einsatz von Lambda Expressions realisieren. Diese Daten können dabei Variablen der umschliessenden Methode sein, in welcher die Lambda Expression definiert wurde. Wie bereits in einem früheren Artikel gezeigt, wird … Weiterlesen

Veröffentlicht unter .NET, C#, Multithreading | Verschlagwortet mit , , , | Kommentar hinterlassen

Override vs. New

Die beiden Schlüsselwörter override und new werden in einer abgeleiteten Klasse angewendet um Methoden der Basisklasse zu überschreiben. Hierbei stellt sich die Frage warum es zwei verschiedene  Schlüsselwörter gibt, wodurch diese sich unterscheiden und in welchen Fällen welches anzuwenden ist. … Weiterlesen

Veröffentlicht unter .NET, C# | Verschlagwortet mit , | Kommentar hinterlassen

Multithreading in C#, Teil 8: Speicherzugriffe

Im achten Teil der Artikelserie zum Thema Multithreading in C# möchte ich Ihnen die Auswirkungen der optimierten Speicherverwaltung des Compilers, der CLR und der CPU auf Ihren Quellcode aufzeigen. Als Beispielanwendung werden wir einen Adapter für eine Fremdkomponente entwickeln. Adapter … Weiterlesen

Veröffentlicht unter .NET, C#, Multithreading | Verschlagwortet mit , , , , , , | Kommentar hinterlassen

LINQ: Quantifizierungs- und Elementaroperatoren

In einem vorhergehenden Artikel habe ich Ihnen bereits einige LINQ Operatoren vorgestellt. Darauf aufbauend möchte ich Ihnen weitere Operatoren näher bringen.   Übersicht In diesem Artikel werden die folgenden LINQ Funktionen vorgestellt: Quantifizierungsoperatoren Any Any mit Prädikat All Elementaroperatoren First … Weiterlesen

Veröffentlicht unter .NET, C#, LINQ | Verschlagwortet mit , , , , , , , , , , | Kommentar hinterlassen

LINQ: Set- Generierungs- und Aufteilungsoperatoren

In einem früheren Artikel habe ich Ihnen einen Crashkurs in LINQ gegeben. Aufbauend auf diesem Artikel möchte ich Ihnen weitere nützliche LINQ Funktionen vorstellen.   Übersicht In diesem Artikel werden die folgenden LINQ Funktionen vorgestellt: Set Operatoren Distinct Except Union … Weiterlesen

Veröffentlicht unter .NET, C#, LINQ | Verschlagwortet mit , , , , , , , , , , | Kommentar hinterlassen

Umgang mit Spezifikationsänderungen

In Softwareprojekten kommt es immer wieder zu Änderungen von Anforderungen. Dies sind zum Teil kleine Anpassungen und Erweiterungen, manchmal aber auch grössere Umstellungen. Dies erlebe ich einerseits direkt in eigenen Projekten und sehe es andererseits auch ständig bei den Projekten … Weiterlesen

Veröffentlicht unter Projektleitung | Verschlagwortet mit , , | Kommentar hinterlassen

Multithreading in C#, Teil 7: Caching

In diesem Teil der Artikelserie möchte ich Ihnen an einem Beispiel zeigen welche Auswirkungen die Speicherverwaltung im .NET Framework auf den Programmfluss haben kann. Der Compiler, die CLR und auch die CPU nutzen Caching Mechanismen zur Zwischenspeicherung von Variablenwerten. Wird … Weiterlesen

Veröffentlicht unter .NET, C#, Multithreading | Verschlagwortet mit , , , , | Kommentar hinterlassen