C# Corner

Resources  
  • FileDownloader : Download files using HTTPJan 10, 2000. This application contains a Form and a Class module . From Form we create a thread which execute the procedure to handle the NET download. This application can be enhance to do more down load as in Download manager by creating more threads.
  • I'm having trouble implementing IObjectSafety. IE keeps telling me that my controls isn't safe. Why?Aug 15, 2000. This article explains about how to implement the IObjectSafety. ATL's IObjectSafetyImpl class appears to have a few bugs in it. The code below works great.
  • Making UI more responsive using ThreadingFeb 12, 2001. This example shows how threads can help us to make User interface more responsive when we have some background jobs.
  • Synchronization in Multi-threadingFeb 13, 2001. This article with sample code shows synchronization concepts of multithreading ..
  • Writing Your First Multithreading ApplicationFeb 14, 2001. If you have never written a multithreading application in C# or .NET, this application might be helpful for you.
  • Multithreading For BeginnersFeb 15, 2001. This tutorial is for beginners who want to write their first multithreaded application in C# and .NET.
  • FTP Server in C#Mar 26, 2001. The application is a simple implementation of FTP Protocol RFC 959.
  • Using .NET Framework Multithreading and GDI+ to Enrich the user experienceMay 04, 2001. This tutorial shows you how to create, send, and received messages using MSMQ from the .NET base class library (System.Messaging) and C#.
  • Ouch! There is a Hook in My C#May 15, 2001. As an extension to the J++ design practice, C# has a syntactic construct, called Attributes, which let you drop hooks to Windows API or modify the runtime semantics, like threading synchronization behavior. The C# has legalized the hooking practice by calling them Attributes, and including them in ECMA C# specification.
  • Control Statemenats - Part 1Jun 01, 2001. This lesson shows how to use c# control statements, and the difference between these controls in C++/ JAVA and c#. Sample includes single selection, if-else, and multi case ..
  • TCP/IPLib SampleJun 22, 2001. This compopnent contains both a TCP/IP server and client. TcpIpClient inherits from System.Net.Sockets.TCPClient and is very straight forward. After construction, specifying the host and port, a network connection is established by calling Connect(). Internally, upon a successful connection, the client receives a TcpIpPacket, which contains a unique cookie that is used in any subsequent transactions.
  • Synchronization in Parallel threadsJul 02, 2001. The Threads makes us able to run multitasks at a time. In fact Computers (John von Neumann Architecture) don't execute the tasks parallel .The OS gives threads permission (depend on thread priority) to work on CPU. The sufficient degree of parallelism keeps the CPU busy and it is efficient.
  • Messaging between Threads using Message LoopAug 20, 2001. MessageLoopLib is a stripped down version of a complete, threading communication subsystem Ive written. This implementation is a single thread created in the GUI constructor. Ive dropped all thread management and have had to change some of the message code to accommodate this.
  • A Simple Multi-threaded TCP/UDP Server and Client V2.Sep 24, 2001. This is the second version of my client/server program. The server and the client can be run on the same machine or on different machines. The following is the brief description of the server and the client programs specifically.
  • Socket ChatSep 24, 2001. This is an implementation of a Chat program using sockets. Along with basic chat capability,
  • Real Time ApplicationOct 02, 2001. The Real time Application is a sample that shows the communication techniques between a client (TcpClient) and a server (TcpServer) application using Socket class on each side. The project also demonstrates how to using listview control in the real time project.
  • WinChat For .NETOct 10, 2001. WinChat For .NET is a simple peer-to-peer chatting program that functions very similarly to the WinChat program provided by Windows 2000. It provides all the functionalities that the original WinChat program provides.
  • C# PagerOct 16, 2001. C# Pager is a simple client/server application that implements functions of a pager.
  • C# IRC BotNov 19, 2001. This is a very simple program that establishes a connection to irc server, joins a channel and greets every nick that joins.
  • Space Invaders in C# and .NETDec 23, 2001. Yes, the classic arcade game has returned and is appearing in C# Corner complete with sound and authentic aliens and source code. It's not quite as good as the real game, but with a few adjustments it can get there.
  • C# Discussion Forum from Harrison LogicJan 29, 2002. Threaded Discussion Forum that utilizes the .NET framework, with C# as the ASP.NET server side language. Uses MS Access Database for data.
  • World Clock Using Windows FormsFeb 11, 2002. I developed a C# application for finding World Timings given the US Central Timing.
  • C#RIS : Tetris Game in C#Feb 14, 2002. I have written a Tetris clone that demonstrates how to use off-screen graphics buffering for smooth animation and utilizes a multi-dimensional array approach to designing a game grid. The classes are largely self-explanatory and the techniques are documented in code well enough to explain what is going on.
  • Multi-threaded Web Applications - Case I: Search EngineMar 07, 2002. This article is the first of the series of 4. I will demonstrate the use of threading in web applications by implementing a simply search engine. The following 3 articles in the series will be a Port Scanner, a Reverse DNS and a Web Hammer respectively.
  • Multi-threaded Web Applications - Case II: Port ScannerMar 12, 2002. This article continues the 4-parts series of Multi-threaded Web Applications. In the first part, I have demonstrated how you can use multi-threading with ASP.NET to make a web based search engine more responsive, and to reduce the time required to compose the result. In this article, I will demonstrate how you can apply the same technique to a web based port scanner.
  • Multicasting using UDP in C#Apr 04, 2002. The attached source code shows you how to use multi casting in a LAN environment.
  • Multithreading Part I: Multithreading and MultitaskingApr 08, 2002. In this and a series of articles that would follow, we would learn about threads and how to write multi-threaded programs in C#.
  • Multithreading Part 2: Understanding the System.Threading.Thread ClassApr 08, 2002. In this article we will study the .NET threading API, how to create threads in C#, start and stop them, define their priorities and states.
  • Multithreading Part 3: Thread SynchronizationApr 11, 2002. The .NET framework provides a number of classes and data types that you can use to control the access to shared resources. Thread synchronization refers to the act of shielding against multithreading issues such as data- races, deadlocks and starvation.
  • Multithreading Part 4: The ThreadPool, Timer Classes and Asynchronous ProgrammingApr 16, 2002. In this article, I would discuss few more .NET classes and how and what role do they play a role in building multithreading applications.
  • Loading XML File in a TreeView Control using MultithreadingApr 19, 2002. There are many occasions when programmers need to develop multithreading applications, which can load big files in the background and let the user do data entry or other jobs without any interruption. In this article, I'll show you how to create multiple threads to load multiple files.
  • .NET Performance Counters, Part 1: Predefined CLR Performance CountersMay 13, 2002. In this article, I will describe what a performance counter is and introduce you to the predefined counters that you can use to monitor the state of the CLR while your applications run.
  • ADO.NET From Windows DNA's PerspectiveJun 12, 2002. Windows DNA is a framework to build multi-tier, high performance, scalable distributed applications over the network. This article takes a Windows DNA perspective and compares how ADO.NET fits in Windows DNA.
  • Developing a Windows Control Library - Digital ClockJul 08, 2002. A Windows control library is similar to an Active X Control that you have been developing using VC++.
  • Working with Arrays in C#Jul 09, 2002. This tutorial discusses array programming in C# and .NET. It starts with the discussion of simple arrays and then delves into more complex topics such as jagged and multi-dimensional arrays. In the end, it discusses the Array class and it's methods for searching and sorting an array's items.
  • Programming C#: Working with Arrays in .NETJul 09, 2002. This article concentrates on arrays in .NET and how you can work with arrays using C# language. Article also covers the Arrays class and its method, which can be used to sort, search, get, and set an array items.
  • Recipe to Implement Threads Quick n Easy in C#Aug 28, 2002. In this tutorial type article, author shows how to write threading applications quick and easy in C#.
  • OpenGL BasicsOct 09, 2002. In this article I want to explain couple of more things. First of all, I would like to cover the OpenGL Coordinate System.
  • BlackJackOct 10, 2002. So as a learning experience, I decided to try writing a Blackjack game.
  • Puzzle ControlOct 15, 2002. In this application I had combined the power of C# and AI in order to solve the "puzzle problem".
  • Texture Mapping in OpenGLOct 15, 2002. This is my third article about OpenGL and this one is about texture mapping.
  • Drawing Shapes using ThreadingOct 25, 2002. This is simple multi-threading program that draws circles and rectangles. Each shape is handle by individual thread that created every time you press start button. Using sleep method on each thread we can change the speed of each shape.
  • Maze Solver Oct 28, 2002. Solving mazes is one of those problems, at least with the algorithm I've chosen here.
  • HJ PDF in C#Oct 31, 2002. This program allows you to download all Italian Hacker Journal issues into PDF files for free.
  • Consumer/Producer Multithreaded ProgramNov 04, 2002. This is simple multi-threading program that adds and removes elements in an ArrayList. Producer button will creates a producer thread that adds elements in to the ArrayList. The maximum number of elements can be added to this ArrayList are 100 elements and the producer thread has to wait until the consumer thread/threads (creates by pressing consumer button) removes elements from the ArrayList. Then Producer thread starts to add more elements to the ArrayList.
  • Client Server Multithreaded ApplicationNov 08, 2002. This is simple Client/Server (multi-threading) program that transfers data. Server can handle multiple clients.
  • Sorting using MultithreadingNov 13, 2002. This is simple multithreading application that sort integers values in an array.
  • Using the ThreadPool to Run Animated Gifs in C# and .NETNov 14, 2002. In this article we will discuss the use of the ThreadPool class in conjunction with the ImageAnimator class to run 3 animated gifs in separate threads.
  • FreeCell Game using Windows FormsNov 14, 2002. FreeCell is an implementation of the FreeCell card game using Windows Forms.
  • Synchronized Threading in .NETDec 11, 2002. Threads are a powerful abstraction for allowing parallelized operations: graphical updates can happen while another thread is performing computations, two threads can handle two simultaneous network requests from a single process, and the list goes on. Since threads are pretty simple to understand, conceptually, but, practically, they are a cause for programmatic headaches, I decided to write this program to describe how to make use of threads.
  • Daleks in .NETDec 11, 2002. The other night my girlfriend dragged me down to the NYC Public Library claiming that they had a huge Science Fiction movie section. Admittedly my taste in movies and my wife's taste in movies can vary slightly, however, I was willing to take a chance, given that rentals at the library are free as opposed to $4 at the local video store.
  • Concurrency Control in ADO.NET using Threads and MonitorsDec 31, 2002. The concurrency controls system refers to the lowest level in architecture of a DBMS. It is relative to the input/output operations, which carry out the transfer of blocks from the secondary memory to the main memory and vice versa.
  • Recording Sheet Music Using C# and .NETFeb 07, 2003. This is a article that allow you to record and replay the music you performed on the piano.
  • Project Trilma .NETFeb 19, 2003. In 1883 George H. Monks from Boston designed Halma, an interesting board game with simple rules.
  • Dots GameMar 06, 2003. Here is a dots game developed using C# and GDI+. New version of the game will be coming soon.
  • Use Thread Local Storage to Pass Thread Specific DataMar 18, 2003. The specific thread level storage is known as thread local storage or TLS for short. The .NET threading namespace allows .NET developers to use TLS from within their multi-threaded applications to store data that is unique to each thread.
  • MWControls v1.0.3.0May 05, 2003. This latest version includes Multi Select TreeView Control which lets you choose between a few different ways of selecting TreeNodes.
  • Changing the default limit of 25 threads of ThreadPool ClassJun 19, 2003. The Threadpool is useful for managing threads that are usually in a wait state and that take only a short amount of time to do their work. If still you would like to change the default limit of 25 threads then here you go.
  • A Virtual Clock in C# and GDI+Jul 01, 2003. This article describes how to create a virtual clock in C#. The hands of the clock are drawn using GraphicPaths.
  • Lengthy Operations on Single Thread in .NET ApplicationsJul 08, 2003. In this article I discuss how the lenghty operations can be handled in a .NET application. I also discuss how the stack trace can be examined to find any specific methods.
  • Boxing and Unboxing of Value Types : What You Need to Know?Jul 21, 2003. Programmers new to C# can encounter less than ideal performance and even unexpected results due to boxing and unboxing of value types.
  • Interlocking ThreadsSep 10, 2003. Recently, I was building multi-threaded applications and noticed some intermittent data inconsistency. Soon, I found the culprit was locking mechanism. After doing some research, I gathered the following information and as usual decide to share with you guys.
  • Memory Management in .NETNov 17, 2003. This tutorial describes Memory Management in .NET.
  • Events Programming in C# Nov 24, 2003. In this article, author discusses the events model in .NET and how to implement events in your applications using C#.
  • Localization in COBOL .NETJan 09, 2004. This article will show you how to use the power of LOCALIZATION within Visual Studio .NET to create one screen and have it display different languages.
  • Multithreaded XML Document for Read/Write AccessJul 21, 2004. This article describes a process for using a ThreadPool within a windows service that monitors other services. It also shows how to allow multithreaded read/write access to an XmlDocument, that acts as persistent storage, using a Mutex.
  • Forum Alert Service Version 1.0Aug 24, 2004. The Alert Service is a Windows service that can be deployed in any discussion forums and whenever a thread is posted to the forums, an alert will be issued in the form of a message to the user.
  • Handling the Queuing of Messages in a Multithreaded ProgramSep 06, 2004. In the financial world you have to deal with messages being spewed at you in large quantities at a rapid rate. For example stock quotes, market data, and orders come flying at you through some sort of wire and you as a programmer have to handle them in a way that doesn’t overwhelm you or the machine.
  • Thread Safe Collections ArrayList and QueueSep 24, 2004. The attached project provides a dll containing a wrapper around the non-thread safe ArrayList and Queue classes. The wrapper implements the most common functions of this collection elements.
  • Pocket Trilma.NETOct 04, 2004. Pocket Trilma.NET is a Pocket PC version of project Trilma.NET.
  • A Scheduled Application Launcher Service in C# and .NETOct 06, 2004. This an article is on launching scheduled tasks. Not quite as exciting as launching a spaceship into outer space, but…hey, even astronauts have to automate some of their day to day activities.
  • SmartPhone Album Program with C#Mar 16, 2005. This article shows how to represent image’s thumbnail in ListView control, how to work with multi-forms and pass information with each other in a smart phone application, how to do simple image-processing, how to scroll picture in a picturebox and use the smart phone’s dpad keys.
  • Evolving into an N-Tier ApplicationMar 23, 2005. This article gives description about evolution of N-tier application.
  • Understanding Threading in .NET FrameworkApr 21, 2005. This article describes how to use threading model in .NET Framework including creating, joining, suspending, killing, and interlocking threads.
  • Multi Selection of DataGrid Rows without Ctrl ClickJul 31, 2005. This article shows how to select multiple rows in a DataGrid without using CRTL.
  • Asynchronous Data Access using Callback ModelAug 17, 2005. The problem with the ADO.Net 1.x is that one thread has to wait for the other thread to complete. So to overcome this problem Microsoft has introduced Asynchronous data access, through which one can execute multiple threads at a time.
  • Introduction to Multithreading in C#Oct 06, 2005. This article is a complete introdution to threading. It explains what is a thread and why it is used in programming. It also talks about common problems with threading, and how to begin writing thread safe code.
  • Glue IIS with Business Logical Tier using Batching, Asynchrony, and Parallel ComputationOct 26, 2005. A great and unusual way to boost your web application performance and scalability five times or more.
  • RegisterWaitForSingleObject in ThreadPoolNov 04, 2005. In this article, we are going to describe how to use Threadpool to execute a thread at specified time interval or instant by using Threading AutoResetEvent.
  • How do I use ThreadPool in C# and .NET?Nov 05, 2005. In this brief articles, I will show you how to use thread pool in C# and .NET.
  • Basic concepts of Threading: Part IJan 27, 2006. In this article, we will look at the basic concepts of threading in C# and .NET.
  • Basic concepts of Threading: Part IIJan 28, 2006. In this article a brief description about System.Threading Namespace, Classes and Interfaces provided that enables multithreading programming.
  • How to Build Multi-Language Web Sites with ASP.NET 2.0 and VS.Net 2005Feb 06, 2006. In this article, we will explore the necessary details for working with resources in ASP.NET applications and for creating international ASP.NET applications based on embedded resources and the integrated localization support.
  • Thread Synchronization using VS.NET 2005Feb 27, 2006. When two or more threads need access to a shared resource, they need some way to ensure that the resource will be used by only one thread at a time. The process by which this is achieved is called synchronization.
  • Multi Threaded File Reader and GeneratorMar 07, 2006. The attached source code with this article is a multithreaded application written using .NET 2.0 that shows how to use the background worker threads to read a text file, generate reports and show report progress and completed events.
  • Antialiased Analog ClockApr 04, 2006. This is an antialiased analog clock sample written in C# using GDI+. It has no flicker at run time because of using Double Buffering technique, and it has many properties that you can customize it such as tick and hand colors, gradient background color, custom date and hand styles.
  • Application Scheduler Service Using C#.Net And XMLMay 29, 2006. This is an application scheduler that is implemented as a Windows Service, similar to the Windows Task Scheduler - but simple, as it has fewer configuration options and it uses XML to store and retrieve data.
  • Thread Safe codeJul 26, 2006. This articles tells the importance and meaning of a thread safe piece of code in C#.
  • Illustrates the use of the lock in multithreading applicationAug 17, 2006. Any application must have one or more processes. A Process is structural unit with a memory block and using some set of resources. For each executable, the Windows operating system creates some isolated memory block. This article tries to explain the use of lock basics of Multithreading in C# .Net.
  • Multithreading Made Easy in .NET 2.0Aug 31, 2006. This article demonstrates a very easy alternative to normal multithreaded programming in .NET. A freely available library called CSP.NET is presented and a sample application shown.
  • Building the ListBoxesFT_C ASP.NET Web User Control in Visual Studio 2005: Part INov 07, 2006. In multi-part article, I share how you can build your own ASP.NET web user control.
  • Building the ListBoxesFT_C ASP.NET Web User Control in Visual Studio 2005: Part IINov 09, 2006. In multi-part article, I share how you can build your own ASP.NET web user control.
  • Building the ListBoxesFT_C ASP.NET Web User Control in Visual Studio 2005: Part IIINov 10, 2006. In multi-part article, I share how you can build your own ASP.NET web user control.
  • Building the ListBoxesFT_C ASP.NET Web User Control in Visual Studio 2005: Part IVNov 11, 2006. In multi-part article, I share how you can build your own ASP.NET web user control.
  • Building the ListBoxesFT_C ASP.NET Web User Control in Visual Studio 2005: Part VNov 15, 2006. In multi-part article, I share how you can build your own ASP.NET web user control.
  • Analog Clock Widget in C#Dec 08, 2006. The code is commented and I think it's easy for a reader to understand it and use it or add code of his own.
  • Mimic the Appearance of Outlook's Sidebar with the Multi-view ControlDec 14, 2006. This article describes a simple way to mimic the appearance of Microsoft’s Outlook sidebar within an ASP.NET 2.0 web application. The approach is based upon the use of the existing Multi-View control contained in the standard ASP.NET 2.0 toolbox and does not require much time or effort to implement. This article includes a sample web application that presents an example of the approach in use.
  • Enhanced Oracle Explorer in C# and .NET Using Windows FormsApr 27, 2007. This application will allows to do multiple simple activities on oracle database like running select statements and getting selected procedure's definition simultaneously in a thread-based GUI.
  • Multi-threaded Asynchronous Programming in C#... Getting started.May 12, 2007. Trying to build better solutions and growing as a developer has always been fun for me and I’m always looking for ways to build more scalability and robustness in the software I am writing. I had a revelation that I’ve been doing a lot of C# tweaking but not taking advantage of the core performance enhancements cooked right into C# and it all comes down to one thing: Asynchronous multi-threaded programming.
  • C# Asynchronous, Multi Threaded Development... Digging In. Part IIMay 13, 2007. In this article we'll dig a bit deeper into what is actually happening when we use the asynchronous calls using C#. Just as in my previous article, we'll simulate a long running I/O bound process as if we were fetching records from a database, making a web service call or reading or writing from a file and see how we can write more performant code by letting the main thread continue on and not wait for the results. 

About Multi-Threaded-Clock

NA

SPONSORED BY

Spire.Doc - Free .NET Word API
Use Spire.Doc to create, read, write, print, and convert word documents to OpenXML, RTF, TXT, XPS, EPUB, EMF, HTML, Image and PDF.
European SharePoint Conference