Difference between revisions of "Example pthread demo"

From wiki.emacinc.com
Jump to: navigation, search
m (Approved for Final Draft)
Line 10: Line 10:
 
== Opening, Building and Uploading the Project Files ==
 
== Opening, Building and Uploading the Project Files ==
  
<big>1. Open the C/C++ editing perspective.</big>
+
1. [[Importing_the_EMAC_OE_SDK_Projects_with_Eclipse | Import ]] the example projects into Eclipse if not already done.
  
stub
+
2. [[ Using_the_EMAC_OE_SDK_Projects_with_Eclipse | Build and Upload ]] the pthread_demo project.
 
 
<big>2. Open the project files.</big>
 
 
 
stub
 
 
 
<big>3. Build the project.</big>
 
 
 
stub
 
 
 
<big>4. Upload the executables to the target system.</big>
 
 
 
stub
 
  
 
==Usage and Behavior==  
 
==Usage and Behavior==  

Revision as of 19:04, 2 January 2014

TODO: {{#todo:FinalDraft (12.11.13-12:03->JG+);(12.11.13-17:25->MD-);(12.12.13-11:25->JG+);(12.31.13-12:45->MD+)|Jgreene|oe 4,oe 5,jg,md,FinalDraft,mg}}

This is a guide to the pthread_demo C example project included in the EMAC OE SDK.

This is a simple pthreads example application. A single thread is created to generate random data that is read by a specified number of reader threads.

The term pthread refers to POSIX Threads, a POSIX standard for threads.

The pthread_demo project builds one executable: p_thread_demo.

Opening, Building and Uploading the Project Files

1. Import the example projects into Eclipse if not already done.

2. Build and Upload the pthread_demo project.

Usage and Behavior

The pthread_demo project is an example of multithreaded code for generating and interacting with an arbitrary number of pthreads. Within the pthread_demo.c C source file can be found demonstrations of how to, specifically:

  • Create pthreads, line 90.
  • Write to pthreads, line 141.
  • Read from pthreads, line 127.
  • Terminate and clean up after pthreads, line 119.

Hardware Requirements

The pthread_demo C example project has no special hardware requirements. It should run just fine on any system for which the project files can be successfully compiled.

Using pthread_demo

./pthread_demo n

where n is the number of threads

Usage Example

root@PPCE7:/tmp# ./pthread_demo 3
generating new random data
generating new random data
    reader: count = 0, data = 693451072
generating new random data
    reader: count = 1, data = 1195545710
generating new random data
    reader: count = 2, data = 462104121

Summary

The pthread_demo C example project demonstrates how to use pthreads. For another example of pthread usage see Example pthread hello.