Introduction | Seeing multithreading in action | Let´s set up multithreading ourselves using TASK | This is how you can learn everything there is about asynchronous programming | Tools for managing your tasks and threads: Diagnostic, Threads, and parallel stacks | Thanks for watching!
Introduction to C# Threads Tutorial | What is Thread class to Learn C# Threads Tutorial | What is multithreading to learn C# Threads Tutorial | Thread life cycle to C# Thread
Showing you the app that we'll build | How to create app project | How to create app GUI | What are events and event handlers | What is default event | Most common errors that beginners make | Why and when to use global variables | Implementing app functionality | Fixing bugs in our app
Introduction | What are we working with? | Creation of Interfaces | This one is for you! | Using Interfaces and polymorphism | Interfaces and dependency Injection | Thanks for watching!
Create 3 Multiline TextBoxes | Task Running Indicator | Sorry, the obs window capture mode did not capture the app's window so the window was added during editing...
GUI – Graphical User Interface is made up of controls | Windows Forms controls | GUIs are event driven | Delegates | Used when you want to pass methods as arguments to other methods | Windows Forms | Are classes | Have attributes, properties and methods | Can have more than one method called for an event handler | AcceptButton - Which button will be clicked when "Enter" is pressed | CancelButton - Which button will be clicked when "Escape" is pressed | ControlBox, Cursor, FormBorderStyle, MaximizeBox, MinimizeBox, Opacity, Text, StartPosition, ShowInTaskbar | Events | WPF Window (Properties) | Background, Cursor, icon, ResizeMode (Show how to reset a value), ShowInTaskbar, Title, WindowStartupLocation, WindowStyle | Windows Forms Textboxes (Properties) | CharacterCasing, MaxLength, PasswordChar, ReadOnly, TextAlign, TabStop, TabIndex | WPF Textboxes (Properties) | CharacterCasing, FlowDirection, IsReadOnly, IsTabStop - talk about tabstops, TabIndex, MaxLength | GroupBoxes – used to arrange components, can display a caption | Panels – Windows Forms | Checkbox | RadioButtons | Used in groups, radio buttons on the form are all part of the same group | To create a new group use a GroupBox or a Panel | PictureBox/Image – used to display images | Mouse Event Handling | KeyDown event - use to handle special characters | KeyUp event | Chapter 14 WPF DateTime and Timer Program
Intro | Agenda | Multithreading is complicated | Theres your first mistake | Multithreading is the answer | Multithreading | Multitasking | Quiz | Thread vs Process | Cores | More cores doesnt mean faster | Race conditions | Stack | Fiber | Green Threads | Multithreading in your toolbox | Multithreaded solutions | Real life example | Generic multithreading environment | Restaurant kitchen example | Threading library | Chefs might work at different speeds | Lets make 50 apple pies | Problems with this design | deadlock | Complex commercial kitchen | Real kitchen | Setting up resources | Eating food | Unique pointers | Future Promise | WorkStealing | Locking | Miscellaneous advice | Readonly data | Shared writable data | Summary | Subscribe | CopperSpice | Diamond | Comments observations
The Difference between a Thread and a Task | Thread Affinity | Context Switch | Demo Using vs Code and Net Core | Create a Console Library | Threads | Code Snippets | Create a Thread | Task Scheduling | Context Switching | Performance Monitor | Performance Counter | Process Id from Linux | What Is Synchronization Context | Difference between Asynchronous and Parallel | Parallel Processing Parallel and Async | Parallel Processing | Parallel versus Concurrency | Why Do We Use Async and Await in Web Api | Parallel and Async | Synchronization Context | Should I Take Care of Synchronization Context for Web Api
Data inconsistency occurs when many threads access a shared resource at a given point in time. E.g. If there are two threads T1 and T2, which are accessing a shared resource R simultaneously. If T1 is trying to read data from the shared resource R when | Threads should be synchronized to avoid confliction to use critical resources. Otherwise, conflicts may arise when parallel- running threads attempt to modify a common variable at the same time. | Why do we need Thread Synchronization? • Thread synchronization helps you achieve the following: • Atomicity-Thread synchronization supports atomicity, which ensures that multiple threads in the application are not allowed to access a shared resource concurrently to | Advantages of thread synchronization is given as follows: • Synchronization can be used to achieve mutual | Methods to manage Synchronization • Thread synchronization can be achieved with the following categories. • Simple blocking methods -Sleep, Join, and Task.Wait • Locking constructs-exclusive locks lock, mutex
Objectives | Creating a Form in the IDE | Form Properties | Using the Toolbox | Common Button Properties | Trying out your program in Visual Studio | Adding Functionality to a Button on a Form | Adding Labels and TextBoxes to a Form | Example from the Textbook
Crash Course | What Exactly Is C-Sharp | Difficulty | Clr | What Is Clr | Versions of Visual Studio | Install Visual Studio | Visual Studio Code | Start Visual Studio | New Project | Build a Console App with the Net Framework | Assembly Info Dot Cs File | App Config | Namespace | Using Statements | Static and Void | Variables | Change the Text Color on the Console | Change Text Color | Greet User | Create a New Random Object | While Loop | Function To Get the App Info | Print to the Screen with a Color
Introduction | Welcome | Course Overview | Is this course right for you | What is ASPNET Core | What is NET | What is C | What is ASPNET | Full Stack Environment | Demo | MVC | Controller | Models | Properties | Create Pages | Run App | Migrations | Object Relation Mapper | Creating Tables | Index Page | Features | Finished Product | Test App | Show Search Form | Show Search Results | Testing | Jokes | CSS
Crash Course | What Exactly Is C-Sharp | Difficulty | Clr | What Is Clr | Versions of Visual Studio | Install Visual Studio | Visual Studio Code | Start Visual Studio | New Project | Build a Console App with the Net Framework | Assembly Info Dot Cs File | App Config | Namespace | Using Statements | Static and Void | Variables | Change the Text Color on the Console | Change Text Color | Greet User | Create a New Random Object | While Loop | Function To Get the App Info | Print to the Screen with a Color
Introduction | Welcome | Course Overview | Is this course right for you | What is ASPNET Core | What is NET | What is C | What is ASPNET | Full Stack Environment | Demo | MVC | Controller | Models | Properties | Create Pages | Run App | Migrations | Object Relation Mapper | Creating Tables | Index Page | Features | Finished Product | Test App | Show Search Form | Show Search Results | Testing | Jokes | CSS
Introduction | Welcome | Course Overview | Is this course right for you | What is ASPNET Core | What is NET | What is C | What is ASPNET | Full Stack Environment | Demo | MVC | Controller | Models | Properties | Create Pages | Run App | Migrations | Object Relation Mapper | Creating Tables | Index Page | Features | Finished Product | Test App | Show Search Form | Show Search Results | Testing | Jokes | CSS
Introduction | Difference between C# and .NET | CLR | Architecture of .NET Applications | Your First C# Program | Variables and Constants | Overflowing | Scope | Demo of Variables and Constants | Type Conversion | Demo of Type Conversion | Operators
Introduction to Async Await in C | What is Asynchronous Programming in regards to Async Await in C | Need of the Asynchronous Programming in regards to Async Await in C | Keywords Async Await in C | demo on Async Await in C | Synchronous vs Asynchronous Programming in regards to Async Await in C
Introduction | Difference between C# and .NET | CLR | Architecture of .NET Applications | Your First C# Program | Variables and Constants | Overflowing | Scope | Demo of Variables and Constants | Type Conversion | Demo of Type Conversion | Operators
Introduction to Async Await in C | What is Asynchronous Programming in regards to Async Await in C | Need of the Asynchronous Programming in regards to Async Await in C | Keywords Async Await in C | demo on Async Await in C | Synchronous vs Asynchronous Programming in regards to Async Await in C
Intro | Demo application walk-through | Explaining the problem: putting instances of different classes (product models) in one list (shopping cart) | Creating an interface | Implementing the interface | List of type Interface | Note about items in the List of type Interface: Accessing a Class member not in the contract | recap: basics of the Interface | Class Inheritance and Interface | Extracting the Interface from a Class | Interface implementing another Interface | Accessing a Class member outside the initial contract (Interface) in the List of type Interface | Power of Interfaces: Adding a new Class to your project, why to use Interfaces
Intro | مقدمة | Modern Application and Concurrency | التطبيقات الحديثة والتزامن | Process And Thread | العملية وشريط التعليمات | Sequential Synchronous Approach | الطريقة المتسلسةالمتزامنة | Creating a thread | خلق شريط عمليات | Foreground Vs Background Threads | شرائط العمليات الامامية والخلفية | Start a Thread | بدء تنفيذ شريط العمليات | Join a thread | انتظار نتيجة التنفيذ | Race Condition | منطق التسابق | Lock to prevent Race condition | تجنب منطق التسابق باستخدام القفل | Deadlock | الطريق المسدود | Thread Pool | بركة شرائط العمليات | ThreadPool class and Pooled thread | كلاس بركة الشرائط | Task class and Pooled thread | كلاس المهام وبركة الشرائط | Real World WaitCallBack | مثال واقعي على انتظار النتيجة
Course Introduction | Introduction to C | Popular IDEs | Your First C++ Program | Compiling and Running a C++ Program | Changing the Theme | Course Structure | Cheat Sheet | Section 1: The Basics | Variables | Constants | Naming Conventions | Mathematical Expressions | Order of Operators | Writing Output to the Console | Reading from the Console | Working with the Standard Library | Comments | Introduction to Fundamental Data Types | Section 2: Fundamental Data Types | Initializing Variables | Working with Numbers | Narrowing | Generating Random Numbers
Intro | مقدمة | Modern Application and Concurrency | التطبيقات الحديثة والتزامن | Process And Thread | العملية وشريط التعليمات | Sequential Synchronous Approach | الطريقة المتسلسةالمتزامنة | Creating a thread | خلق شريط عمليات | Foreground Vs Background Threads | شرائط العمليات الامامية والخلفية | Start a Thread | بدء تنفيذ شريط العمليات | Join a thread | انتظار نتيجة التنفيذ | Race Condition | منطق التسابق | Lock to prevent Race condition | تجنب منطق التسابق باستخدام القفل | Deadlock | الطريق المسدود | Thread Pool | بركة شرائط العمليات | ThreadPool class and Pooled thread | كلاس بركة الشرائط | Task class and Pooled thread | كلاس المهام وبركة الشرائط | Real World WaitCallBack | مثال واقعي على انتظار النتيجة
Course Introduction | Introduction to C | Popular IDEs | Your First C++ Program | Compiling and Running a C++ Program | Changing the Theme | Course Structure | Cheat Sheet | Section 1: The Basics | Variables | Constants | Naming Conventions | Mathematical Expressions | Order of Operators | Writing Output to the Console | Reading from the Console | Working with the Standard Library | Comments | Introduction to Fundamental Data Types | Section 2: Fundamental Data Types | Initializing Variables | Working with Numbers | Narrowing | Generating Random Numbers
Memory Regions | The Stack | The Heap | Data Types | Reference Types | Value Types | Inheritance In Memory | Performance | Why Reference Types? | Nullability In Memory | Common Uses for Value Types | Boxing | stackalloc
Inter Process Communication | Introduction of Inter Process Communication | Forms of Ipc | Half Duplex Pipes | Pipes | Representing a Pipe between the Processes | Create a Pipe with a Program | Write Function | P Open and P Close Functions | Prototype of P Open and P Close Functions | Core Processes | Unix Filter
create a static instance of flappy bird | add a column | create a new random object | add the y motion to the bird | move them over by speed | add a mouse listener | add the score