Week 9a - Asynchronous Systems

Synopsis:

This lecture is concerned with Message-passing Communication Systems.

Readings and Activities for the Week:

Glossary of Terms

  1. The Syllabus describes topics to be covered, reading material for you to digest as part of each lecture, and due dates for assigned projects.
  2. Projects:

  3. Asynchronous Systems

    Asynchronous Systems Presentation, pptx,

    Communication using Message Queues

    BasicNetThreadDemos

    Queued Messages
    Deposit messages in a queue for later retrieval by another thread.

    WPF Thread Demos
    Illustrates use of (1) threads, and (2) asynch awaits to implement long running activities and displaying results in a WPF window.

    Basic Tasks
    Explores asynchronous processing, using Tasks, with combinations of inputs and outputs, and also use of continuations.

    async await Pattern
    Shows how to use asynch await emphasizing the affect of await's continuation.

    Asynchronous Calls Demo
    Use delegates asynchronous BeginInvoke and EndInvoke methods.

    Form with BeginInvoke
    Use the same asynchronous delegate, but now dequeue with a UI thread.

    ThreadPool Demo
    Dispatch work items to members of a thread pool.

    Form's BackgroundWorker
    The Form provided BackgroundWorker wraps the use of a ThreadPool to simplify a developer's implementation.

    You can use the BackgroundWorker with WPF, accorting to this blog post

  4. Peer-to-Peer communication Prototype
    Illustrates use of one-way message passing to establish Peer-To-Peer communication.
  5. Preparation for Synchronous Discussion:

    • Draw a package diagram for your design of Project #4 and be prepared to discuss it in the Synchronous session.
  6. Lecture Take-aways:

    The most important things we discussed are: