Skip to main content

Make .Net Web API queue requests operate 'single threaded'

Brief

When working with a multithreading application it is very important for developers to handle multiple threads for a critical section of code.

Monitor and lock is the way to provide thread safety in a multithreaded application in C#. Both provide a mechanism to ensure that only one thread is executing code at the same time to avoid any functional breaking of code.

Example 

Lock for only one request to be processed at a time.

private static object s_SyncRoot = new object();

...
new Task(() =>
{
  lock (s_SyncRoot)
  {
    // process payment - single thread
  }
}).Start();
return "ok";

Links

  1. StackOverflow
  2. Monitor And Lock In C#

Comments

Popular posts from this blog

All the require docs of job seekers (java docs, testing docs, study materials, genuine consultancy link)

# JUST_FOR  JAVA LOVERS : CORE & ADVANCED JAVA Notes ! Core Java and Advanced Java Notes! . Link 1 :-  https://www.dropbox.com/s/t…/1--%20Core%20Java%28TOC%29.pdf… Link 2 :-  https://www.dropbox.com/s/0ahi8r…/9--%20Advanced%20Java.pdf… _________________________________ 1.  https://drive.google.com/…/0BxJrew1xg5ZLZjdabnVUUkswalk/view 2. https://drive.google.com/…/0BxJrew1xg5ZLVHVSQ0tiU1VmVXM/view 3. https://drive.google.com/…/0BxJrew1xg5ZLdS1JUTAxMWtTcEU/view 4. https://drive.google.com/…/0BxJrew1xg5ZLY1M5bGp2Ym5lZUk/view 5. https://drive.google.com/…/0BxJrew1xg5ZLck13Rndpd1ZlcEU/view 6.  https://drive.google.com/…/0BxJrew1xg5ZLb2xodlhOTEVzLTA/view --------------------- Spring --------------------- https://drive.google.com/…/0BxJrew1xg5ZLQ3VaQnlja3N1Mkk/view https://drive.google.com/…/0BxJrew1xg5ZLTXNVLUdOR0xmTzQ/view https://drive.google.com/…/0BxJrew1xg5ZLWU9PUmVKUUYtMjQ/view ---------------------- Hibernate ---------------------...

npm install on windows 7 python2 not found error and node-sass@3.13.1 error #317

Before I write all, I'd like to say that before the update everything worked well; while updating node from version 7.2.1 to version 9.4.0 and npm from version 5.5.1 to version 5.6.0 in Windows 7 (64-bit) using the installer (https://nodejs.org/en/download/) and installing globally gulp-cli version 2.0.0, as far as npm install starts from the JointsWP folder I get the following error: $ npm install npm WARN deprecated babel-preset-es2015@6.24.1: รฐ  Thanks for using Babel: we recommend using babel-preset-env now: please read babeljs.io/env to update! npm WARN deprecated gulp-util@3.0.8: gulp-util is deprecated - replace it, following the guidelines at https://medium.com/gulpjs/gulp-util-ca3b1f9f9ac5 npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue > uws@0.14.5 install C:\Users\Bob\Dropbox\Development\vhosts\mongoose-project\vanilla\themes\JointsWP\node_modules\uws > node-gyp rebuild > build_log.txt 2>...

Useful video links with Questions and Answers(.NET, SQL/Database, Azure, DSA, Docker, GIT, AI)

A) AI What is artificial intelligence (AI)? B) .NET SOLID Principles In C# With Examples Design Patterns In C# .NET (2023)   Design Patterns   Software Architecture And Patterns Shiva Kumar - .NET (Youtube)   Multithreading and multitasking Multithreading and asynchronous programming and parallel programming in C# (Youtube)   C) SQL/Database SQL Query Interview Questions - SQL Server Database (Youtube)   ACID Properties Of Transaction In DBMS (Youtube) D) Azure   Modules in this learning path - MSDN Susanth Sutheesh (Youtube)   E) DSA   Strivers A2Z DSA Course/Sheet F) Docker   Docker - Everything You Need To Know G) GIT   Start with Git & GitHub in Visual Studio Misc https://www.youtube.com/watch?v=aaUInV445BY Salary Negotiation - 10 tips on how to negotiate a Higher Salary