Thread Producer and Consumer : Producer Consumer « Thread « VB.Net

Home
VB.Net
1.2D
2.Application
3.Class
4.Data Structure
5.Data Types
6.Database ADO.net
7.Date Time
8.Development
9.Event
10.File Directory
11.Generics
12.GUI
13.Internationalization I18N
14.Language Basics
15.LINQ
16.Network Remote
17.Reflection
18.Security
19.Thread
20.Windows Presentation Foundation
21.Windows System
22.XML
23.XML LINQ
VB.Net Tutorial
VB.Net by API
VB.Net » Thread » Producer ConsumerScreenshots 
Thread Producer and Consumer
Thread Producer and Consumer

Imports System.Threading

Module Module1

    Public Buffer As Integer
    Public BufferEmpty As Boolean = True
    Public MonitorLock As Object = New Object()

    Sub Producer()
        Dim Value As Integer = 0
        Do
            Monitor.Enter(MonitorLock)
            If (BufferEmptyThen
                BufferEmpty = False
                Buffer = Value

                If (Value = 0Then
                    Value = 1
                Else
                    Value = 0
                End If

                Console.WriteLine("Producer: " & Buffer)

            End If
            Monitor.Exit(MonitorLock)

        Loop While (True)

    End Sub

    Sub Consumer()

        Dim Value As Integer

        Do
            Monitor.Enter(MonitorLock)

            If (Not BufferEmptyThen
                BufferEmpty = True
                Thread.CurrentThread.Sleep(1000)

                Value = Buffer

                Console.WriteLine("Consumer: " & Value)

            End If

            Monitor.Exit(MonitorLock)

        Loop While (True)

    End Sub

    Sub Main()
        Dim ProducerThread As Thread
        Dim ConsumerThread As Thread

        ProducerThread = New Thread(AddressOf Producer)
        ConsumerThread = New Thread(AddressOf Consumer)

        ProducerThread.Start()
        ConsumerThread.Start()
    End Sub

End Module


           
       
Related examples in the same category
1.Producer and Consumer with Unsynchronized Integer BufferProducer and Consumer with Unsynchronized Integer Buffer
2.Producer and Consumer with Synchronized Integer BufferProducer and Consumer with Synchronized Integer Buffer
w___ww___.___j_a___va2___s_.___com__ | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.