Home » .NET » Page 9

.NET

Automating object pooling using IDisposable and finalizers

Last week we looked into the concept of object pooling, and how it can be used to increase performance by reusing objects that are expensive to create. We also implemented a generic static class to make using object pools as simple as possible. Today I want to expand on the topic by showing how we can go even further and ...

Read More »

MSDN Dive – Week 35

MSDN Dive – Week 35 Today I want to show you some documentation about the Windows Presentation Foundation (WPF) from the MSDN. There is a lot of material that can help you implement rich and sophisticating UIs as well as material that helps you to understand how the WPF works internally.       WPF Architecture – Learn: Differences between PresentationFramework ...

Read More »

Reusing objects with generic object pooling

Over the last couple of months I’ve been working a lot with WPF (Windows Presentation Foundation), the popular user interface framework by Microsoft. Something that I noticed quite quickly is how expensive it can be to create WPF controls in code. It could take up to several milliseconds to create a new interface element – even simple ones. The interface ...

Read More »

.NET enable and disable Fusion log to investigate assembly loading issues

Had to investigate some Assembly Loading issues, so I wrote two batch files to enable and disable the .NET Fusion Log: reg add "HKLM\Software\Microsoft\Fusion" /v EnableLog /t REG_DWORD /d 0 /f Disable-Fusion-Log-.NET-Assembly-Binding-Logging.bat hosted by GitHub. reg add "HKLM\Software\Microsoft\Fusion" /v EnableLog /t REG_DWORD /d 1 /f Enable-Fusion-Log-.NET-Assembly-Binding-Logging.bat hosted by GitHub. They modify the HKLM\Software\Microsoft\Fusion key REG_DWORD value EnableLog. A few notes: ...

Read More »

API Design: Small modifications over a network

In RavenDB 4.0 (yes, that is quite a bit away), we are working on additional data types and storage engines. One of the things that we’ll add, for example, is the notion of gossiping distributed counters. That doesn’t actually matter for our purposes here, however. What I wanted to talk about today is the problem in making small updates over ...

Read More »

SignalR Scaleout with REDIS Backplane

Introduction In “Getting Started with SignalR“, I provided a gentle introduction to SignalR with a few simple and practical examples. The overwhelming response showed that I’m not alone in thinking this is an awesome technology enabling real-time push notifications over the web. Web applications often face the challenge of having to scale to handle large amounts of clients, and SignalR ...

Read More »

Localised Crepuscular Rays

Crepuscular rays, volumetric rays, or god rays have become a common effect in games. They are used especially in first and third person games – where the player can easily look at the sky – to give the sun, moon, or other bright light sources additional impact and create atmosphere. Depending on how the effect is used it can emphasize ...

Read More »

Getting Started with SignalR

Introduction SignalR is an open source .NET library enabling real-time broadcasts of data on the web. Typical example applications include chats, stock tickers, and even games. It does this by leveraging and abstracting a number of different technologies, choosing the most suitable transport mechanism based on what the client and server support (since WebSocket support is not yet widespread). At ...

Read More »

What is new in RavenDB 3.5. Exploring data in the dark

One of the things that tend to happen a lot when we are developing with a database is that we need to peek at the data, and a lot of the time, just looking at the data one document at a time isn’t good for us. We noticed that a lot of users will create temporary indexes (usually map/reduce ones) ...

Read More »