-
Home
- Ti dsp/bios lab
- Lab 5
- Microsoft visual basic queue
The module is a lab assignment to help you better understand the very basics of Microsoft Visual Basic queues.
Introduction
This lab module will help you become familiar with the basics of queues in Microsoft Visual Basic. The exercises are written assuming you are using Visual Basic 2005 and the .NET Framework version 2.0 (or later). Some older versions will work the same, but you may need to figure out some differences. It should work with newer version also.
Module prerequisites
You should complete the Visual Basic Threads and Semaphores lab before this one.
Labratory
Part 1
- In this part you will just put some items on a queue and then take them off and print them.
- Start up Visual Studio and create a new Visual Basic project.
- In the Form1 class make a queue variable and then a synchronized queue.
- In the
Form1_Load
method put the following objects on the queue:
- The string "Hello"
- The string "World"
- The number 23
- The string "Twenty Three"
- Now make a for loop that iterates using the
Count
property of the queue.
- Inside the loop, dequeue items from the queue and print them to the console.
- Run your program and record the results.
Part 2
- In this part you will create two threads where one thread will write to a queue and the other will take the items off and print them. No synchronization will be done in this part. The reading thread will need to keep checking to see if there is anything on the queue.
- Start up Visual Studio and create a new Visual Basic project.
- In the Form1 class make a queue variable and then a synchronized queue. Use the synchronized queue.
- Make two threads in the Form1 class and start them up in the
Form1_Load
method.
- In the method for the first thread:
- make a counter variable
- make a loop that loops forever
- in the loop increment the counter
- in the loop put the counter value on the queue
- In the method for the second thread:
- make a loop that loops forever
- in the loop make an if statement that checks the count property of the queue
- if the count value is not zero, take an element off the queue and print it
- if the count value is zero, print a statement that says there was nothing on the queue
- Run your program and record the results.
Part 3
- In this part you will create two threads where one thread will write to a queue and the other will take the items off and print them. Synchronization will be done in this part. The reading thread will wait until there is something on the queue then take all the elements off and print them. The writing thread will signal the reading thread when it puts something on the queue.
- Start up Visual Studio and create a new Visual Basic project.
- In the Form1 class make a queue variable and then a synchronized queue. Use the synchronized queue.
- In the Form1 class make an
AutoResetEvent
event variable that will be used to synchronize the two threads.
- Make two threads in the Form1 class and start them up in the
Form1_Load
method.
- In the method for the first thread:
- make a counter variable
- make a loop that loops forever
- in the loop: increment the counter, put the counter value on the queue, print a statement telling what was written, signal the
AutoResetEvent
event with the
Set
method
- In the method for the second thread:
- make a loop that loops forever
- in the loop print a statement saying that the task is about to wait
- have the thread wait for the
AutoResetEvent
event by calling the
WaitOne
method
- after the
WaitOne
call, make another while loop that keeps removing items from the queue as long as the count is greater than zero
- print the value of the element taken off the queue to the console
- Run your program and record the results.
Part 4
- This uses the code from the previous part.
- After writing the value to the queue, have the first thread sleep for 100 ms using the command
Thread.Sleep(100)
- Run your program and record the results.
Questions & Answers
classification of plants, gymnosperm features.
what is the features of gymnosperm
Linsy
how many types of solid did we have
what is an ionic bond
Samuel
what is fallopian tube
Merolyn
what's bulbourethral gland
urine is formed in the nephron of the renal medulla in the kidney. It starts from filtration, then selective reabsorption and finally secretion
State the evolution relation and relevance between endoplasmic reticulum and cytoskeleton as it relates to cell.
Jeremiah
how is urine formed in human
Konadu
how is urine formed in human
Rahma
what is the diference between a cavity and a canal
what is the causative agent of malaria
Diamond
malaria is caused by an insect called mosquito.
Naomi
Malaria is cause by female anopheles mosquito
Isaac
Malaria is caused by plasmodium
Female anopheles mosquitoe is d carrier
Olalekan
a canal is more needed in a root but a cavity is a bad effect
Commander
In biology, a pathogen (Greek: πάθος pathos "suffering", "passion" and -γενής -genēs "producer of") in the oldest and broadest sense, is anything that can produce disease. A pathogen may also be referred to as an infectious agent, or simply a germ.
The term pathogen came into use in the 1880s.[1][2
Zainab
Definition of respiration
respiration is the process in which we breath in oxygen and breath out carbon dioxide
Achor
how are lungs work
Commander
where does digestion begins
what are the functions of follicle stimulating harmones?
stimulates the follicle to release the mature ovum into the oviduct
Davonte
what are the functions of Endocrine and pituitary gland
Chinaza
endocrine secrete hormone and regulate body process
Achor
while pituitary gland is an example of endocrine system and it's found in the Brain
Achor
Biology is the study of living organisms, divided into many specialized field that cover their morphology, physiology,anatomy, behaviour,origin and distribution.
Lisah
biology is the study of life.
Alfreda
Biology is the study of how living organisms live and survive in a specific environment
Sifune
Got questions? Join the online conversation and get instant answers!
Source:
OpenStax, Ti dsp/bios lab. OpenStax CNX. Sep 03, 2013 Download for free at http://cnx.org/content/col11265/1.8
Google Play and the Google Play logo are trademarks of Google Inc.