From 9e72e0357142fe0132cd09063c3c31f8ff9ce1e3 Mon Sep 17 00:00:00 2001
From: Brandon Rodriguez <brodriguez8774@gmail.com>
Date: Wed, 15 Nov 2017 09:31:24 -0500
Subject: [PATCH] Add examples to project and improve file organization

---
 {Documents => Data}/big-data/0       |   0
 {Documents => Data}/big-data/1       |   0
 {Documents => Data}/big-data/10      |   0
 {Documents => Data}/big-data/100     |   0
 {Documents => Data}/big-data/101     |   0
 {Documents => Data}/big-data/102     |   0
 {Documents => Data}/big-data/103     |   0
 {Documents => Data}/big-data/104     |   0
 {Documents => Data}/big-data/105     |   0
 {Documents => Data}/big-data/106     |   0
 {Documents => Data}/big-data/107     |   0
 {Documents => Data}/big-data/108     |   0
 {Documents => Data}/big-data/109     |   0
 {Documents => Data}/big-data/11      |   0
 {Documents => Data}/big-data/110     |   0
 {Documents => Data}/big-data/111     |   0
 {Documents => Data}/big-data/112     |   0
 {Documents => Data}/big-data/113     |   0
 {Documents => Data}/big-data/114     |   0
 {Documents => Data}/big-data/115     |   0
 {Documents => Data}/big-data/116     |   0
 {Documents => Data}/big-data/117     |   0
 {Documents => Data}/big-data/118     |   0
 {Documents => Data}/big-data/119     |   0
 {Documents => Data}/big-data/12      |   0
 {Documents => Data}/big-data/120     |   0
 {Documents => Data}/big-data/121     |   0
 {Documents => Data}/big-data/122     |   0
 {Documents => Data}/big-data/123     |   0
 {Documents => Data}/big-data/124     |   0
 {Documents => Data}/big-data/125     |   0
 {Documents => Data}/big-data/126     |   0
 {Documents => Data}/big-data/127     |   0
 {Documents => Data}/big-data/128     |   0
 {Documents => Data}/big-data/129     |   0
 {Documents => Data}/big-data/13      |   0
 {Documents => Data}/big-data/130     |   0
 {Documents => Data}/big-data/131     |   0
 {Documents => Data}/big-data/132     |   0
 {Documents => Data}/big-data/133     |   0
 {Documents => Data}/big-data/134     |   0
 {Documents => Data}/big-data/135     |   0
 {Documents => Data}/big-data/136     |   0
 {Documents => Data}/big-data/137     |   0
 {Documents => Data}/big-data/138     |   0
 {Documents => Data}/big-data/139     |   0
 {Documents => Data}/big-data/14      |   0
 {Documents => Data}/big-data/140     |   0
 {Documents => Data}/big-data/141     |   0
 {Documents => Data}/big-data/142     |   0
 {Documents => Data}/big-data/143     |   0
 {Documents => Data}/big-data/144     |   0
 {Documents => Data}/big-data/145     |   0
 {Documents => Data}/big-data/146     |   0
 {Documents => Data}/big-data/147     |   0
 {Documents => Data}/big-data/148     |   0
 {Documents => Data}/big-data/149     |   0
 {Documents => Data}/big-data/15      |   0
 {Documents => Data}/big-data/150     |   0
 {Documents => Data}/big-data/151     |   0
 {Documents => Data}/big-data/152     |   0
 {Documents => Data}/big-data/153     |   0
 {Documents => Data}/big-data/154     |   0
 {Documents => Data}/big-data/155     |   0
 {Documents => Data}/big-data/156     |   0
 {Documents => Data}/big-data/157     |   0
 {Documents => Data}/big-data/158     |   0
 {Documents => Data}/big-data/159     |   0
 {Documents => Data}/big-data/16      |   0
 {Documents => Data}/big-data/160     |   0
 {Documents => Data}/big-data/161     |   0
 {Documents => Data}/big-data/162     |   0
 {Documents => Data}/big-data/163     |   0
 {Documents => Data}/big-data/164     |   0
 {Documents => Data}/big-data/165     |   0
 {Documents => Data}/big-data/166     |   0
 {Documents => Data}/big-data/17      |   0
 {Documents => Data}/big-data/18      |   0
 {Documents => Data}/big-data/19      |   0
 {Documents => Data}/big-data/2       |   0
 {Documents => Data}/big-data/20      |   0
 {Documents => Data}/big-data/21      |   0
 {Documents => Data}/big-data/22      |   0
 {Documents => Data}/big-data/23      |   0
 {Documents => Data}/big-data/24      |   0
 {Documents => Data}/big-data/25      |   0
 {Documents => Data}/big-data/26      |   0
 {Documents => Data}/big-data/27      |   0
 {Documents => Data}/big-data/28      |   0
 {Documents => Data}/big-data/29      |   0
 {Documents => Data}/big-data/3       |   0
 {Documents => Data}/big-data/30      |   0
 {Documents => Data}/big-data/31      |   0
 {Documents => Data}/big-data/32      |   0
 {Documents => Data}/big-data/33      |   0
 {Documents => Data}/big-data/34      |   0
 {Documents => Data}/big-data/35      |   0
 {Documents => Data}/big-data/36      |   0
 {Documents => Data}/big-data/37      |   0
 {Documents => Data}/big-data/38      |   0
 {Documents => Data}/big-data/39      |   0
 {Documents => Data}/big-data/4       |   0
 {Documents => Data}/big-data/40      |   0
 {Documents => Data}/big-data/41      |   0
 {Documents => Data}/big-data/42      |   0
 {Documents => Data}/big-data/43      |   0
 {Documents => Data}/big-data/44      |   0
 {Documents => Data}/big-data/45      |   0
 {Documents => Data}/big-data/46      |   0
 {Documents => Data}/big-data/47      |   0
 {Documents => Data}/big-data/48      |   0
 {Documents => Data}/big-data/49      |   0
 {Documents => Data}/big-data/5       |   0
 {Documents => Data}/big-data/50      |   0
 {Documents => Data}/big-data/51      |   0
 {Documents => Data}/big-data/52      |   0
 {Documents => Data}/big-data/53      |   0
 {Documents => Data}/big-data/54      |   0
 {Documents => Data}/big-data/55      |   0
 {Documents => Data}/big-data/56      |   0
 {Documents => Data}/big-data/57      |   0
 {Documents => Data}/big-data/58      |   0
 {Documents => Data}/big-data/59      |   0
 {Documents => Data}/big-data/6       |   0
 {Documents => Data}/big-data/60      |   0
 {Documents => Data}/big-data/61      |   0
 {Documents => Data}/big-data/62      |   0
 {Documents => Data}/big-data/63      |   0
 {Documents => Data}/big-data/64      |   0
 {Documents => Data}/big-data/65      |   0
 {Documents => Data}/big-data/66      |   0
 {Documents => Data}/big-data/67      |   0
 {Documents => Data}/big-data/68      |   0
 {Documents => Data}/big-data/69      |   0
 {Documents => Data}/big-data/7       |   0
 {Documents => Data}/big-data/70      |   0
 {Documents => Data}/big-data/71      |   0
 {Documents => Data}/big-data/72      |   0
 {Documents => Data}/big-data/73      |   0
 {Documents => Data}/big-data/74      |   0
 {Documents => Data}/big-data/75      |   0
 {Documents => Data}/big-data/76      |   0
 {Documents => Data}/big-data/77      |   0
 {Documents => Data}/big-data/78      |   0
 {Documents => Data}/big-data/79      |   0
 {Documents => Data}/big-data/8       |   0
 {Documents => Data}/big-data/80      |   0
 {Documents => Data}/big-data/81      |   0
 {Documents => Data}/big-data/82      |   0
 {Documents => Data}/big-data/83      |   0
 {Documents => Data}/big-data/84      |   0
 {Documents => Data}/big-data/85      |   0
 {Documents => Data}/big-data/86      |   0
 {Documents => Data}/big-data/87      |   0
 {Documents => Data}/big-data/88      |   0
 {Documents => Data}/big-data/89      |   0
 {Documents => Data}/big-data/9       |   0
 {Documents => Data}/big-data/90      |   0
 {Documents => Data}/big-data/91      |   0
 {Documents => Data}/big-data/92      |   0
 {Documents => Data}/big-data/93      |   0
 {Documents => Data}/big-data/94      |   0
 {Documents => Data}/big-data/95      |   0
 {Documents => Data}/big-data/96      |   0
 {Documents => Data}/big-data/97      |   0
 {Documents => Data}/big-data/98      |   0
 {Documents => Data}/big-data/99      |   0
 {Documents => Data}/small-data/0     |   0
 {Documents => Data}/small-data/1     |   0
 {Documents => Data}/small-data/2     |   0
 {Documents => Data}/small-data/3     |   0
 {Documents => Data}/small-data/4     |   0
 {Documents => Data}/small-data/5     |   0
 {Documents => Data}/small-data/6     |   0
 {Documents => Data}/small-data/7     |   0
 {Documents => Data}/small-data/8     |   0
 Examples/BakingAndEating.c           | 117 +++++++++++++++++++++++++++
 Examples/PthreadExitWithReturnData.c |  67 +++++++++++++++
 Examples/StringThreadEx1.c           |  39 +++++++++
 Examples/ThreadEx1.c                 |  57 +++++++++++++
 Examples/ThreadEx2.c                 |  56 +++++++++++++
 Examples/ThreadEx3.c                 | 109 +++++++++++++++++++++++++
 182 files changed, 445 insertions(+)
 rename {Documents => Data}/big-data/0 (100%)
 rename {Documents => Data}/big-data/1 (100%)
 rename {Documents => Data}/big-data/10 (100%)
 rename {Documents => Data}/big-data/100 (100%)
 rename {Documents => Data}/big-data/101 (100%)
 rename {Documents => Data}/big-data/102 (100%)
 rename {Documents => Data}/big-data/103 (100%)
 rename {Documents => Data}/big-data/104 (100%)
 rename {Documents => Data}/big-data/105 (100%)
 rename {Documents => Data}/big-data/106 (100%)
 rename {Documents => Data}/big-data/107 (100%)
 rename {Documents => Data}/big-data/108 (100%)
 rename {Documents => Data}/big-data/109 (100%)
 rename {Documents => Data}/big-data/11 (100%)
 rename {Documents => Data}/big-data/110 (100%)
 rename {Documents => Data}/big-data/111 (100%)
 rename {Documents => Data}/big-data/112 (100%)
 rename {Documents => Data}/big-data/113 (100%)
 rename {Documents => Data}/big-data/114 (100%)
 rename {Documents => Data}/big-data/115 (100%)
 rename {Documents => Data}/big-data/116 (100%)
 rename {Documents => Data}/big-data/117 (100%)
 rename {Documents => Data}/big-data/118 (100%)
 rename {Documents => Data}/big-data/119 (100%)
 rename {Documents => Data}/big-data/12 (100%)
 rename {Documents => Data}/big-data/120 (100%)
 rename {Documents => Data}/big-data/121 (100%)
 rename {Documents => Data}/big-data/122 (100%)
 rename {Documents => Data}/big-data/123 (100%)
 rename {Documents => Data}/big-data/124 (100%)
 rename {Documents => Data}/big-data/125 (100%)
 rename {Documents => Data}/big-data/126 (100%)
 rename {Documents => Data}/big-data/127 (100%)
 rename {Documents => Data}/big-data/128 (100%)
 rename {Documents => Data}/big-data/129 (100%)
 rename {Documents => Data}/big-data/13 (100%)
 rename {Documents => Data}/big-data/130 (100%)
 rename {Documents => Data}/big-data/131 (100%)
 rename {Documents => Data}/big-data/132 (100%)
 rename {Documents => Data}/big-data/133 (100%)
 rename {Documents => Data}/big-data/134 (100%)
 rename {Documents => Data}/big-data/135 (100%)
 rename {Documents => Data}/big-data/136 (100%)
 rename {Documents => Data}/big-data/137 (100%)
 rename {Documents => Data}/big-data/138 (100%)
 rename {Documents => Data}/big-data/139 (100%)
 rename {Documents => Data}/big-data/14 (100%)
 rename {Documents => Data}/big-data/140 (100%)
 rename {Documents => Data}/big-data/141 (100%)
 rename {Documents => Data}/big-data/142 (100%)
 rename {Documents => Data}/big-data/143 (100%)
 rename {Documents => Data}/big-data/144 (100%)
 rename {Documents => Data}/big-data/145 (100%)
 rename {Documents => Data}/big-data/146 (100%)
 rename {Documents => Data}/big-data/147 (100%)
 rename {Documents => Data}/big-data/148 (100%)
 rename {Documents => Data}/big-data/149 (100%)
 rename {Documents => Data}/big-data/15 (100%)
 rename {Documents => Data}/big-data/150 (100%)
 rename {Documents => Data}/big-data/151 (100%)
 rename {Documents => Data}/big-data/152 (100%)
 rename {Documents => Data}/big-data/153 (100%)
 rename {Documents => Data}/big-data/154 (100%)
 rename {Documents => Data}/big-data/155 (100%)
 rename {Documents => Data}/big-data/156 (100%)
 rename {Documents => Data}/big-data/157 (100%)
 rename {Documents => Data}/big-data/158 (100%)
 rename {Documents => Data}/big-data/159 (100%)
 rename {Documents => Data}/big-data/16 (100%)
 rename {Documents => Data}/big-data/160 (100%)
 rename {Documents => Data}/big-data/161 (100%)
 rename {Documents => Data}/big-data/162 (100%)
 rename {Documents => Data}/big-data/163 (100%)
 rename {Documents => Data}/big-data/164 (100%)
 rename {Documents => Data}/big-data/165 (100%)
 rename {Documents => Data}/big-data/166 (100%)
 rename {Documents => Data}/big-data/17 (100%)
 rename {Documents => Data}/big-data/18 (100%)
 rename {Documents => Data}/big-data/19 (100%)
 rename {Documents => Data}/big-data/2 (100%)
 rename {Documents => Data}/big-data/20 (100%)
 rename {Documents => Data}/big-data/21 (100%)
 rename {Documents => Data}/big-data/22 (100%)
 rename {Documents => Data}/big-data/23 (100%)
 rename {Documents => Data}/big-data/24 (100%)
 rename {Documents => Data}/big-data/25 (100%)
 rename {Documents => Data}/big-data/26 (100%)
 rename {Documents => Data}/big-data/27 (100%)
 rename {Documents => Data}/big-data/28 (100%)
 rename {Documents => Data}/big-data/29 (100%)
 rename {Documents => Data}/big-data/3 (100%)
 rename {Documents => Data}/big-data/30 (100%)
 rename {Documents => Data}/big-data/31 (100%)
 rename {Documents => Data}/big-data/32 (100%)
 rename {Documents => Data}/big-data/33 (100%)
 rename {Documents => Data}/big-data/34 (100%)
 rename {Documents => Data}/big-data/35 (100%)
 rename {Documents => Data}/big-data/36 (100%)
 rename {Documents => Data}/big-data/37 (100%)
 rename {Documents => Data}/big-data/38 (100%)
 rename {Documents => Data}/big-data/39 (100%)
 rename {Documents => Data}/big-data/4 (100%)
 rename {Documents => Data}/big-data/40 (100%)
 rename {Documents => Data}/big-data/41 (100%)
 rename {Documents => Data}/big-data/42 (100%)
 rename {Documents => Data}/big-data/43 (100%)
 rename {Documents => Data}/big-data/44 (100%)
 rename {Documents => Data}/big-data/45 (100%)
 rename {Documents => Data}/big-data/46 (100%)
 rename {Documents => Data}/big-data/47 (100%)
 rename {Documents => Data}/big-data/48 (100%)
 rename {Documents => Data}/big-data/49 (100%)
 rename {Documents => Data}/big-data/5 (100%)
 rename {Documents => Data}/big-data/50 (100%)
 rename {Documents => Data}/big-data/51 (100%)
 rename {Documents => Data}/big-data/52 (100%)
 rename {Documents => Data}/big-data/53 (100%)
 rename {Documents => Data}/big-data/54 (100%)
 rename {Documents => Data}/big-data/55 (100%)
 rename {Documents => Data}/big-data/56 (100%)
 rename {Documents => Data}/big-data/57 (100%)
 rename {Documents => Data}/big-data/58 (100%)
 rename {Documents => Data}/big-data/59 (100%)
 rename {Documents => Data}/big-data/6 (100%)
 rename {Documents => Data}/big-data/60 (100%)
 rename {Documents => Data}/big-data/61 (100%)
 rename {Documents => Data}/big-data/62 (100%)
 rename {Documents => Data}/big-data/63 (100%)
 rename {Documents => Data}/big-data/64 (100%)
 rename {Documents => Data}/big-data/65 (100%)
 rename {Documents => Data}/big-data/66 (100%)
 rename {Documents => Data}/big-data/67 (100%)
 rename {Documents => Data}/big-data/68 (100%)
 rename {Documents => Data}/big-data/69 (100%)
 rename {Documents => Data}/big-data/7 (100%)
 rename {Documents => Data}/big-data/70 (100%)
 rename {Documents => Data}/big-data/71 (100%)
 rename {Documents => Data}/big-data/72 (100%)
 rename {Documents => Data}/big-data/73 (100%)
 rename {Documents => Data}/big-data/74 (100%)
 rename {Documents => Data}/big-data/75 (100%)
 rename {Documents => Data}/big-data/76 (100%)
 rename {Documents => Data}/big-data/77 (100%)
 rename {Documents => Data}/big-data/78 (100%)
 rename {Documents => Data}/big-data/79 (100%)
 rename {Documents => Data}/big-data/8 (100%)
 rename {Documents => Data}/big-data/80 (100%)
 rename {Documents => Data}/big-data/81 (100%)
 rename {Documents => Data}/big-data/82 (100%)
 rename {Documents => Data}/big-data/83 (100%)
 rename {Documents => Data}/big-data/84 (100%)
 rename {Documents => Data}/big-data/85 (100%)
 rename {Documents => Data}/big-data/86 (100%)
 rename {Documents => Data}/big-data/87 (100%)
 rename {Documents => Data}/big-data/88 (100%)
 rename {Documents => Data}/big-data/89 (100%)
 rename {Documents => Data}/big-data/9 (100%)
 rename {Documents => Data}/big-data/90 (100%)
 rename {Documents => Data}/big-data/91 (100%)
 rename {Documents => Data}/big-data/92 (100%)
 rename {Documents => Data}/big-data/93 (100%)
 rename {Documents => Data}/big-data/94 (100%)
 rename {Documents => Data}/big-data/95 (100%)
 rename {Documents => Data}/big-data/96 (100%)
 rename {Documents => Data}/big-data/97 (100%)
 rename {Documents => Data}/big-data/98 (100%)
 rename {Documents => Data}/big-data/99 (100%)
 rename {Documents => Data}/small-data/0 (100%)
 rename {Documents => Data}/small-data/1 (100%)
 rename {Documents => Data}/small-data/2 (100%)
 rename {Documents => Data}/small-data/3 (100%)
 rename {Documents => Data}/small-data/4 (100%)
 rename {Documents => Data}/small-data/5 (100%)
 rename {Documents => Data}/small-data/6 (100%)
 rename {Documents => Data}/small-data/7 (100%)
 rename {Documents => Data}/small-data/8 (100%)
 create mode 100644 Examples/BakingAndEating.c
 create mode 100644 Examples/PthreadExitWithReturnData.c
 create mode 100644 Examples/StringThreadEx1.c
 create mode 100644 Examples/ThreadEx1.c
 create mode 100644 Examples/ThreadEx2.c
 create mode 100644 Examples/ThreadEx3.c

diff --git a/Documents/big-data/0 b/Data/big-data/0
similarity index 100%
rename from Documents/big-data/0
rename to Data/big-data/0
diff --git a/Documents/big-data/1 b/Data/big-data/1
similarity index 100%
rename from Documents/big-data/1
rename to Data/big-data/1
diff --git a/Documents/big-data/10 b/Data/big-data/10
similarity index 100%
rename from Documents/big-data/10
rename to Data/big-data/10
diff --git a/Documents/big-data/100 b/Data/big-data/100
similarity index 100%
rename from Documents/big-data/100
rename to Data/big-data/100
diff --git a/Documents/big-data/101 b/Data/big-data/101
similarity index 100%
rename from Documents/big-data/101
rename to Data/big-data/101
diff --git a/Documents/big-data/102 b/Data/big-data/102
similarity index 100%
rename from Documents/big-data/102
rename to Data/big-data/102
diff --git a/Documents/big-data/103 b/Data/big-data/103
similarity index 100%
rename from Documents/big-data/103
rename to Data/big-data/103
diff --git a/Documents/big-data/104 b/Data/big-data/104
similarity index 100%
rename from Documents/big-data/104
rename to Data/big-data/104
diff --git a/Documents/big-data/105 b/Data/big-data/105
similarity index 100%
rename from Documents/big-data/105
rename to Data/big-data/105
diff --git a/Documents/big-data/106 b/Data/big-data/106
similarity index 100%
rename from Documents/big-data/106
rename to Data/big-data/106
diff --git a/Documents/big-data/107 b/Data/big-data/107
similarity index 100%
rename from Documents/big-data/107
rename to Data/big-data/107
diff --git a/Documents/big-data/108 b/Data/big-data/108
similarity index 100%
rename from Documents/big-data/108
rename to Data/big-data/108
diff --git a/Documents/big-data/109 b/Data/big-data/109
similarity index 100%
rename from Documents/big-data/109
rename to Data/big-data/109
diff --git a/Documents/big-data/11 b/Data/big-data/11
similarity index 100%
rename from Documents/big-data/11
rename to Data/big-data/11
diff --git a/Documents/big-data/110 b/Data/big-data/110
similarity index 100%
rename from Documents/big-data/110
rename to Data/big-data/110
diff --git a/Documents/big-data/111 b/Data/big-data/111
similarity index 100%
rename from Documents/big-data/111
rename to Data/big-data/111
diff --git a/Documents/big-data/112 b/Data/big-data/112
similarity index 100%
rename from Documents/big-data/112
rename to Data/big-data/112
diff --git a/Documents/big-data/113 b/Data/big-data/113
similarity index 100%
rename from Documents/big-data/113
rename to Data/big-data/113
diff --git a/Documents/big-data/114 b/Data/big-data/114
similarity index 100%
rename from Documents/big-data/114
rename to Data/big-data/114
diff --git a/Documents/big-data/115 b/Data/big-data/115
similarity index 100%
rename from Documents/big-data/115
rename to Data/big-data/115
diff --git a/Documents/big-data/116 b/Data/big-data/116
similarity index 100%
rename from Documents/big-data/116
rename to Data/big-data/116
diff --git a/Documents/big-data/117 b/Data/big-data/117
similarity index 100%
rename from Documents/big-data/117
rename to Data/big-data/117
diff --git a/Documents/big-data/118 b/Data/big-data/118
similarity index 100%
rename from Documents/big-data/118
rename to Data/big-data/118
diff --git a/Documents/big-data/119 b/Data/big-data/119
similarity index 100%
rename from Documents/big-data/119
rename to Data/big-data/119
diff --git a/Documents/big-data/12 b/Data/big-data/12
similarity index 100%
rename from Documents/big-data/12
rename to Data/big-data/12
diff --git a/Documents/big-data/120 b/Data/big-data/120
similarity index 100%
rename from Documents/big-data/120
rename to Data/big-data/120
diff --git a/Documents/big-data/121 b/Data/big-data/121
similarity index 100%
rename from Documents/big-data/121
rename to Data/big-data/121
diff --git a/Documents/big-data/122 b/Data/big-data/122
similarity index 100%
rename from Documents/big-data/122
rename to Data/big-data/122
diff --git a/Documents/big-data/123 b/Data/big-data/123
similarity index 100%
rename from Documents/big-data/123
rename to Data/big-data/123
diff --git a/Documents/big-data/124 b/Data/big-data/124
similarity index 100%
rename from Documents/big-data/124
rename to Data/big-data/124
diff --git a/Documents/big-data/125 b/Data/big-data/125
similarity index 100%
rename from Documents/big-data/125
rename to Data/big-data/125
diff --git a/Documents/big-data/126 b/Data/big-data/126
similarity index 100%
rename from Documents/big-data/126
rename to Data/big-data/126
diff --git a/Documents/big-data/127 b/Data/big-data/127
similarity index 100%
rename from Documents/big-data/127
rename to Data/big-data/127
diff --git a/Documents/big-data/128 b/Data/big-data/128
similarity index 100%
rename from Documents/big-data/128
rename to Data/big-data/128
diff --git a/Documents/big-data/129 b/Data/big-data/129
similarity index 100%
rename from Documents/big-data/129
rename to Data/big-data/129
diff --git a/Documents/big-data/13 b/Data/big-data/13
similarity index 100%
rename from Documents/big-data/13
rename to Data/big-data/13
diff --git a/Documents/big-data/130 b/Data/big-data/130
similarity index 100%
rename from Documents/big-data/130
rename to Data/big-data/130
diff --git a/Documents/big-data/131 b/Data/big-data/131
similarity index 100%
rename from Documents/big-data/131
rename to Data/big-data/131
diff --git a/Documents/big-data/132 b/Data/big-data/132
similarity index 100%
rename from Documents/big-data/132
rename to Data/big-data/132
diff --git a/Documents/big-data/133 b/Data/big-data/133
similarity index 100%
rename from Documents/big-data/133
rename to Data/big-data/133
diff --git a/Documents/big-data/134 b/Data/big-data/134
similarity index 100%
rename from Documents/big-data/134
rename to Data/big-data/134
diff --git a/Documents/big-data/135 b/Data/big-data/135
similarity index 100%
rename from Documents/big-data/135
rename to Data/big-data/135
diff --git a/Documents/big-data/136 b/Data/big-data/136
similarity index 100%
rename from Documents/big-data/136
rename to Data/big-data/136
diff --git a/Documents/big-data/137 b/Data/big-data/137
similarity index 100%
rename from Documents/big-data/137
rename to Data/big-data/137
diff --git a/Documents/big-data/138 b/Data/big-data/138
similarity index 100%
rename from Documents/big-data/138
rename to Data/big-data/138
diff --git a/Documents/big-data/139 b/Data/big-data/139
similarity index 100%
rename from Documents/big-data/139
rename to Data/big-data/139
diff --git a/Documents/big-data/14 b/Data/big-data/14
similarity index 100%
rename from Documents/big-data/14
rename to Data/big-data/14
diff --git a/Documents/big-data/140 b/Data/big-data/140
similarity index 100%
rename from Documents/big-data/140
rename to Data/big-data/140
diff --git a/Documents/big-data/141 b/Data/big-data/141
similarity index 100%
rename from Documents/big-data/141
rename to Data/big-data/141
diff --git a/Documents/big-data/142 b/Data/big-data/142
similarity index 100%
rename from Documents/big-data/142
rename to Data/big-data/142
diff --git a/Documents/big-data/143 b/Data/big-data/143
similarity index 100%
rename from Documents/big-data/143
rename to Data/big-data/143
diff --git a/Documents/big-data/144 b/Data/big-data/144
similarity index 100%
rename from Documents/big-data/144
rename to Data/big-data/144
diff --git a/Documents/big-data/145 b/Data/big-data/145
similarity index 100%
rename from Documents/big-data/145
rename to Data/big-data/145
diff --git a/Documents/big-data/146 b/Data/big-data/146
similarity index 100%
rename from Documents/big-data/146
rename to Data/big-data/146
diff --git a/Documents/big-data/147 b/Data/big-data/147
similarity index 100%
rename from Documents/big-data/147
rename to Data/big-data/147
diff --git a/Documents/big-data/148 b/Data/big-data/148
similarity index 100%
rename from Documents/big-data/148
rename to Data/big-data/148
diff --git a/Documents/big-data/149 b/Data/big-data/149
similarity index 100%
rename from Documents/big-data/149
rename to Data/big-data/149
diff --git a/Documents/big-data/15 b/Data/big-data/15
similarity index 100%
rename from Documents/big-data/15
rename to Data/big-data/15
diff --git a/Documents/big-data/150 b/Data/big-data/150
similarity index 100%
rename from Documents/big-data/150
rename to Data/big-data/150
diff --git a/Documents/big-data/151 b/Data/big-data/151
similarity index 100%
rename from Documents/big-data/151
rename to Data/big-data/151
diff --git a/Documents/big-data/152 b/Data/big-data/152
similarity index 100%
rename from Documents/big-data/152
rename to Data/big-data/152
diff --git a/Documents/big-data/153 b/Data/big-data/153
similarity index 100%
rename from Documents/big-data/153
rename to Data/big-data/153
diff --git a/Documents/big-data/154 b/Data/big-data/154
similarity index 100%
rename from Documents/big-data/154
rename to Data/big-data/154
diff --git a/Documents/big-data/155 b/Data/big-data/155
similarity index 100%
rename from Documents/big-data/155
rename to Data/big-data/155
diff --git a/Documents/big-data/156 b/Data/big-data/156
similarity index 100%
rename from Documents/big-data/156
rename to Data/big-data/156
diff --git a/Documents/big-data/157 b/Data/big-data/157
similarity index 100%
rename from Documents/big-data/157
rename to Data/big-data/157
diff --git a/Documents/big-data/158 b/Data/big-data/158
similarity index 100%
rename from Documents/big-data/158
rename to Data/big-data/158
diff --git a/Documents/big-data/159 b/Data/big-data/159
similarity index 100%
rename from Documents/big-data/159
rename to Data/big-data/159
diff --git a/Documents/big-data/16 b/Data/big-data/16
similarity index 100%
rename from Documents/big-data/16
rename to Data/big-data/16
diff --git a/Documents/big-data/160 b/Data/big-data/160
similarity index 100%
rename from Documents/big-data/160
rename to Data/big-data/160
diff --git a/Documents/big-data/161 b/Data/big-data/161
similarity index 100%
rename from Documents/big-data/161
rename to Data/big-data/161
diff --git a/Documents/big-data/162 b/Data/big-data/162
similarity index 100%
rename from Documents/big-data/162
rename to Data/big-data/162
diff --git a/Documents/big-data/163 b/Data/big-data/163
similarity index 100%
rename from Documents/big-data/163
rename to Data/big-data/163
diff --git a/Documents/big-data/164 b/Data/big-data/164
similarity index 100%
rename from Documents/big-data/164
rename to Data/big-data/164
diff --git a/Documents/big-data/165 b/Data/big-data/165
similarity index 100%
rename from Documents/big-data/165
rename to Data/big-data/165
diff --git a/Documents/big-data/166 b/Data/big-data/166
similarity index 100%
rename from Documents/big-data/166
rename to Data/big-data/166
diff --git a/Documents/big-data/17 b/Data/big-data/17
similarity index 100%
rename from Documents/big-data/17
rename to Data/big-data/17
diff --git a/Documents/big-data/18 b/Data/big-data/18
similarity index 100%
rename from Documents/big-data/18
rename to Data/big-data/18
diff --git a/Documents/big-data/19 b/Data/big-data/19
similarity index 100%
rename from Documents/big-data/19
rename to Data/big-data/19
diff --git a/Documents/big-data/2 b/Data/big-data/2
similarity index 100%
rename from Documents/big-data/2
rename to Data/big-data/2
diff --git a/Documents/big-data/20 b/Data/big-data/20
similarity index 100%
rename from Documents/big-data/20
rename to Data/big-data/20
diff --git a/Documents/big-data/21 b/Data/big-data/21
similarity index 100%
rename from Documents/big-data/21
rename to Data/big-data/21
diff --git a/Documents/big-data/22 b/Data/big-data/22
similarity index 100%
rename from Documents/big-data/22
rename to Data/big-data/22
diff --git a/Documents/big-data/23 b/Data/big-data/23
similarity index 100%
rename from Documents/big-data/23
rename to Data/big-data/23
diff --git a/Documents/big-data/24 b/Data/big-data/24
similarity index 100%
rename from Documents/big-data/24
rename to Data/big-data/24
diff --git a/Documents/big-data/25 b/Data/big-data/25
similarity index 100%
rename from Documents/big-data/25
rename to Data/big-data/25
diff --git a/Documents/big-data/26 b/Data/big-data/26
similarity index 100%
rename from Documents/big-data/26
rename to Data/big-data/26
diff --git a/Documents/big-data/27 b/Data/big-data/27
similarity index 100%
rename from Documents/big-data/27
rename to Data/big-data/27
diff --git a/Documents/big-data/28 b/Data/big-data/28
similarity index 100%
rename from Documents/big-data/28
rename to Data/big-data/28
diff --git a/Documents/big-data/29 b/Data/big-data/29
similarity index 100%
rename from Documents/big-data/29
rename to Data/big-data/29
diff --git a/Documents/big-data/3 b/Data/big-data/3
similarity index 100%
rename from Documents/big-data/3
rename to Data/big-data/3
diff --git a/Documents/big-data/30 b/Data/big-data/30
similarity index 100%
rename from Documents/big-data/30
rename to Data/big-data/30
diff --git a/Documents/big-data/31 b/Data/big-data/31
similarity index 100%
rename from Documents/big-data/31
rename to Data/big-data/31
diff --git a/Documents/big-data/32 b/Data/big-data/32
similarity index 100%
rename from Documents/big-data/32
rename to Data/big-data/32
diff --git a/Documents/big-data/33 b/Data/big-data/33
similarity index 100%
rename from Documents/big-data/33
rename to Data/big-data/33
diff --git a/Documents/big-data/34 b/Data/big-data/34
similarity index 100%
rename from Documents/big-data/34
rename to Data/big-data/34
diff --git a/Documents/big-data/35 b/Data/big-data/35
similarity index 100%
rename from Documents/big-data/35
rename to Data/big-data/35
diff --git a/Documents/big-data/36 b/Data/big-data/36
similarity index 100%
rename from Documents/big-data/36
rename to Data/big-data/36
diff --git a/Documents/big-data/37 b/Data/big-data/37
similarity index 100%
rename from Documents/big-data/37
rename to Data/big-data/37
diff --git a/Documents/big-data/38 b/Data/big-data/38
similarity index 100%
rename from Documents/big-data/38
rename to Data/big-data/38
diff --git a/Documents/big-data/39 b/Data/big-data/39
similarity index 100%
rename from Documents/big-data/39
rename to Data/big-data/39
diff --git a/Documents/big-data/4 b/Data/big-data/4
similarity index 100%
rename from Documents/big-data/4
rename to Data/big-data/4
diff --git a/Documents/big-data/40 b/Data/big-data/40
similarity index 100%
rename from Documents/big-data/40
rename to Data/big-data/40
diff --git a/Documents/big-data/41 b/Data/big-data/41
similarity index 100%
rename from Documents/big-data/41
rename to Data/big-data/41
diff --git a/Documents/big-data/42 b/Data/big-data/42
similarity index 100%
rename from Documents/big-data/42
rename to Data/big-data/42
diff --git a/Documents/big-data/43 b/Data/big-data/43
similarity index 100%
rename from Documents/big-data/43
rename to Data/big-data/43
diff --git a/Documents/big-data/44 b/Data/big-data/44
similarity index 100%
rename from Documents/big-data/44
rename to Data/big-data/44
diff --git a/Documents/big-data/45 b/Data/big-data/45
similarity index 100%
rename from Documents/big-data/45
rename to Data/big-data/45
diff --git a/Documents/big-data/46 b/Data/big-data/46
similarity index 100%
rename from Documents/big-data/46
rename to Data/big-data/46
diff --git a/Documents/big-data/47 b/Data/big-data/47
similarity index 100%
rename from Documents/big-data/47
rename to Data/big-data/47
diff --git a/Documents/big-data/48 b/Data/big-data/48
similarity index 100%
rename from Documents/big-data/48
rename to Data/big-data/48
diff --git a/Documents/big-data/49 b/Data/big-data/49
similarity index 100%
rename from Documents/big-data/49
rename to Data/big-data/49
diff --git a/Documents/big-data/5 b/Data/big-data/5
similarity index 100%
rename from Documents/big-data/5
rename to Data/big-data/5
diff --git a/Documents/big-data/50 b/Data/big-data/50
similarity index 100%
rename from Documents/big-data/50
rename to Data/big-data/50
diff --git a/Documents/big-data/51 b/Data/big-data/51
similarity index 100%
rename from Documents/big-data/51
rename to Data/big-data/51
diff --git a/Documents/big-data/52 b/Data/big-data/52
similarity index 100%
rename from Documents/big-data/52
rename to Data/big-data/52
diff --git a/Documents/big-data/53 b/Data/big-data/53
similarity index 100%
rename from Documents/big-data/53
rename to Data/big-data/53
diff --git a/Documents/big-data/54 b/Data/big-data/54
similarity index 100%
rename from Documents/big-data/54
rename to Data/big-data/54
diff --git a/Documents/big-data/55 b/Data/big-data/55
similarity index 100%
rename from Documents/big-data/55
rename to Data/big-data/55
diff --git a/Documents/big-data/56 b/Data/big-data/56
similarity index 100%
rename from Documents/big-data/56
rename to Data/big-data/56
diff --git a/Documents/big-data/57 b/Data/big-data/57
similarity index 100%
rename from Documents/big-data/57
rename to Data/big-data/57
diff --git a/Documents/big-data/58 b/Data/big-data/58
similarity index 100%
rename from Documents/big-data/58
rename to Data/big-data/58
diff --git a/Documents/big-data/59 b/Data/big-data/59
similarity index 100%
rename from Documents/big-data/59
rename to Data/big-data/59
diff --git a/Documents/big-data/6 b/Data/big-data/6
similarity index 100%
rename from Documents/big-data/6
rename to Data/big-data/6
diff --git a/Documents/big-data/60 b/Data/big-data/60
similarity index 100%
rename from Documents/big-data/60
rename to Data/big-data/60
diff --git a/Documents/big-data/61 b/Data/big-data/61
similarity index 100%
rename from Documents/big-data/61
rename to Data/big-data/61
diff --git a/Documents/big-data/62 b/Data/big-data/62
similarity index 100%
rename from Documents/big-data/62
rename to Data/big-data/62
diff --git a/Documents/big-data/63 b/Data/big-data/63
similarity index 100%
rename from Documents/big-data/63
rename to Data/big-data/63
diff --git a/Documents/big-data/64 b/Data/big-data/64
similarity index 100%
rename from Documents/big-data/64
rename to Data/big-data/64
diff --git a/Documents/big-data/65 b/Data/big-data/65
similarity index 100%
rename from Documents/big-data/65
rename to Data/big-data/65
diff --git a/Documents/big-data/66 b/Data/big-data/66
similarity index 100%
rename from Documents/big-data/66
rename to Data/big-data/66
diff --git a/Documents/big-data/67 b/Data/big-data/67
similarity index 100%
rename from Documents/big-data/67
rename to Data/big-data/67
diff --git a/Documents/big-data/68 b/Data/big-data/68
similarity index 100%
rename from Documents/big-data/68
rename to Data/big-data/68
diff --git a/Documents/big-data/69 b/Data/big-data/69
similarity index 100%
rename from Documents/big-data/69
rename to Data/big-data/69
diff --git a/Documents/big-data/7 b/Data/big-data/7
similarity index 100%
rename from Documents/big-data/7
rename to Data/big-data/7
diff --git a/Documents/big-data/70 b/Data/big-data/70
similarity index 100%
rename from Documents/big-data/70
rename to Data/big-data/70
diff --git a/Documents/big-data/71 b/Data/big-data/71
similarity index 100%
rename from Documents/big-data/71
rename to Data/big-data/71
diff --git a/Documents/big-data/72 b/Data/big-data/72
similarity index 100%
rename from Documents/big-data/72
rename to Data/big-data/72
diff --git a/Documents/big-data/73 b/Data/big-data/73
similarity index 100%
rename from Documents/big-data/73
rename to Data/big-data/73
diff --git a/Documents/big-data/74 b/Data/big-data/74
similarity index 100%
rename from Documents/big-data/74
rename to Data/big-data/74
diff --git a/Documents/big-data/75 b/Data/big-data/75
similarity index 100%
rename from Documents/big-data/75
rename to Data/big-data/75
diff --git a/Documents/big-data/76 b/Data/big-data/76
similarity index 100%
rename from Documents/big-data/76
rename to Data/big-data/76
diff --git a/Documents/big-data/77 b/Data/big-data/77
similarity index 100%
rename from Documents/big-data/77
rename to Data/big-data/77
diff --git a/Documents/big-data/78 b/Data/big-data/78
similarity index 100%
rename from Documents/big-data/78
rename to Data/big-data/78
diff --git a/Documents/big-data/79 b/Data/big-data/79
similarity index 100%
rename from Documents/big-data/79
rename to Data/big-data/79
diff --git a/Documents/big-data/8 b/Data/big-data/8
similarity index 100%
rename from Documents/big-data/8
rename to Data/big-data/8
diff --git a/Documents/big-data/80 b/Data/big-data/80
similarity index 100%
rename from Documents/big-data/80
rename to Data/big-data/80
diff --git a/Documents/big-data/81 b/Data/big-data/81
similarity index 100%
rename from Documents/big-data/81
rename to Data/big-data/81
diff --git a/Documents/big-data/82 b/Data/big-data/82
similarity index 100%
rename from Documents/big-data/82
rename to Data/big-data/82
diff --git a/Documents/big-data/83 b/Data/big-data/83
similarity index 100%
rename from Documents/big-data/83
rename to Data/big-data/83
diff --git a/Documents/big-data/84 b/Data/big-data/84
similarity index 100%
rename from Documents/big-data/84
rename to Data/big-data/84
diff --git a/Documents/big-data/85 b/Data/big-data/85
similarity index 100%
rename from Documents/big-data/85
rename to Data/big-data/85
diff --git a/Documents/big-data/86 b/Data/big-data/86
similarity index 100%
rename from Documents/big-data/86
rename to Data/big-data/86
diff --git a/Documents/big-data/87 b/Data/big-data/87
similarity index 100%
rename from Documents/big-data/87
rename to Data/big-data/87
diff --git a/Documents/big-data/88 b/Data/big-data/88
similarity index 100%
rename from Documents/big-data/88
rename to Data/big-data/88
diff --git a/Documents/big-data/89 b/Data/big-data/89
similarity index 100%
rename from Documents/big-data/89
rename to Data/big-data/89
diff --git a/Documents/big-data/9 b/Data/big-data/9
similarity index 100%
rename from Documents/big-data/9
rename to Data/big-data/9
diff --git a/Documents/big-data/90 b/Data/big-data/90
similarity index 100%
rename from Documents/big-data/90
rename to Data/big-data/90
diff --git a/Documents/big-data/91 b/Data/big-data/91
similarity index 100%
rename from Documents/big-data/91
rename to Data/big-data/91
diff --git a/Documents/big-data/92 b/Data/big-data/92
similarity index 100%
rename from Documents/big-data/92
rename to Data/big-data/92
diff --git a/Documents/big-data/93 b/Data/big-data/93
similarity index 100%
rename from Documents/big-data/93
rename to Data/big-data/93
diff --git a/Documents/big-data/94 b/Data/big-data/94
similarity index 100%
rename from Documents/big-data/94
rename to Data/big-data/94
diff --git a/Documents/big-data/95 b/Data/big-data/95
similarity index 100%
rename from Documents/big-data/95
rename to Data/big-data/95
diff --git a/Documents/big-data/96 b/Data/big-data/96
similarity index 100%
rename from Documents/big-data/96
rename to Data/big-data/96
diff --git a/Documents/big-data/97 b/Data/big-data/97
similarity index 100%
rename from Documents/big-data/97
rename to Data/big-data/97
diff --git a/Documents/big-data/98 b/Data/big-data/98
similarity index 100%
rename from Documents/big-data/98
rename to Data/big-data/98
diff --git a/Documents/big-data/99 b/Data/big-data/99
similarity index 100%
rename from Documents/big-data/99
rename to Data/big-data/99
diff --git a/Documents/small-data/0 b/Data/small-data/0
similarity index 100%
rename from Documents/small-data/0
rename to Data/small-data/0
diff --git a/Documents/small-data/1 b/Data/small-data/1
similarity index 100%
rename from Documents/small-data/1
rename to Data/small-data/1
diff --git a/Documents/small-data/2 b/Data/small-data/2
similarity index 100%
rename from Documents/small-data/2
rename to Data/small-data/2
diff --git a/Documents/small-data/3 b/Data/small-data/3
similarity index 100%
rename from Documents/small-data/3
rename to Data/small-data/3
diff --git a/Documents/small-data/4 b/Data/small-data/4
similarity index 100%
rename from Documents/small-data/4
rename to Data/small-data/4
diff --git a/Documents/small-data/5 b/Data/small-data/5
similarity index 100%
rename from Documents/small-data/5
rename to Data/small-data/5
diff --git a/Documents/small-data/6 b/Data/small-data/6
similarity index 100%
rename from Documents/small-data/6
rename to Data/small-data/6
diff --git a/Documents/small-data/7 b/Data/small-data/7
similarity index 100%
rename from Documents/small-data/7
rename to Data/small-data/7
diff --git a/Documents/small-data/8 b/Data/small-data/8
similarity index 100%
rename from Documents/small-data/8
rename to Data/small-data/8
diff --git a/Examples/BakingAndEating.c b/Examples/BakingAndEating.c
new file mode 100644
index 0000000..129a749
--- /dev/null
+++ b/Examples/BakingAndEating.c
@@ -0,0 +1,117 @@
+#include <pthread.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <unistd.h>
+#define NUM_THREADS 3
+
+//the mutex
+pthread_mutex_t Lock  = PTHREAD_MUTEX_INITIALIZER;
+pthread_cond_t PiesToEat = PTHREAD_COND_INITIALIZER;
+
+//Shared Resources
+int Done[NUM_THREADS];
+int PiecesOfPie;
+
+void * baker()
+{
+	int i, AllDone;
+	while (!AllDone)
+	{ 
+		AllDone = 1; 
+		for (i = 0; i < NUM_THREADS; i++)
+			  AllDone= (Done[i] && AllDone); //clever
+			
+		if(AllDone) 
+		{
+			fprintf(stderr,"All Eaters are done\n"); 
+		}
+		else
+		{
+			pthread_mutex_lock(&Lock);		
+		
+			if (PiecesOfPie == 0)
+			{
+				PiecesOfPie += 2;
+				fprintf(stderr,"Baked 2 Pieces of Pie\n");
+			}
+			
+			//Broadcast to all threads that pies have been made
+			pthread_cond_broadcast(&PiesToEat);
+			pthread_mutex_unlock(&Lock);
+		}
+		
+		usleep(100);
+	}
+	
+	fprintf(stderr,"Done Baking\n");
+	pthread_exit(NULL);
+}
+
+void * eater(void * TID)
+{
+	long threadID = (long) TID;
+	int PiecesEaten = 0; // Control Pieces Eaten by Thread
+	
+	Done[threadID] = 0;
+	
+	while (PiecesEaten < 2)
+	{
+		pthread_mutex_lock(&Lock);
+		
+		if (PiecesOfPie == 0) 
+		{
+			fprintf(stderr,"No pieces of pie for thread %ld\n", threadID);
+			pthread_cond_wait(&PiesToEat, &Lock);
+			fprintf(stderr,"Thread %ld waited for baker\n", threadID);
+		}
+		else
+		{
+			PiecesOfPie--;
+			PiecesEaten++;
+			fprintf(stderr,"Thread %ld ate a piece of pie\n", threadID);
+		}
+		
+		pthread_mutex_unlock(&Lock);
+		
+		usleep(1);
+	}
+	
+	fprintf(stderr,"Thread %ld has eaten 2 pieces of pie\n", threadID);
+	
+	Done[threadID] = 1;
+	
+	pthread_exit(NULL);
+}
+
+int main()
+{
+	pthread_t threads[NUM_THREADS];
+	pthread_t PieBaker;
+	
+	PiecesOfPie = 0;
+	
+	//Create Eaters
+	long i;
+	for(i = 0; i < NUM_THREADS; i++)
+	{
+		fprintf(stderr,"IN MAIN: creating thread #%lu\n", i);
+		//create has 4 arguments:
+			//1 - Ptr of thread
+			//2 - Don't care, NULL
+			//3 - Name of Void * method
+			//4 - Something to pass as an argument to thread's method
+		pthread_create(&threads[i], NULL, eater, (void *)i);
+	}
+	
+	//Create Baker
+	fprintf(stderr,"IN MAIN: creating the baker\n");
+	pthread_create(&PieBaker, NULL, baker, NULL);
+	
+	/* Last thing that main() should do */
+	pthread_mutex_destroy(&Lock);
+	pthread_join(PieBaker, NULL); //Waits for the baker thread to end.
+	//Could wait for eaters as well but Baker waits for eaters anyway.
+	
+	printf("Done in main\n");
+	return 0;
+}
diff --git a/Examples/PthreadExitWithReturnData.c b/Examples/PthreadExitWithReturnData.c
new file mode 100644
index 0000000..1278b6a
--- /dev/null
+++ b/Examples/PthreadExitWithReturnData.c
@@ -0,0 +1,67 @@
+// Demo of thread join and exit with data passing
+// Mystery of C pointers remains ineffable ? 
+// R. Trenary, 3/13/14
+//
+#include <pthread.h>
+#include <stdio.h>
+#include <stdlib.h>
+#define MaxThread 100 
+
+typedef struct DataStruct
+		{
+		int count;      // I say DataStruct and mean struct DataStruct
+		int * DataPtr;
+		}
+	DataStruct;
+
+//==================================
+//    A THREAD
+//==================================
+void *ThreadA(void * PassedPtr)  
+{ int NumPlaces,i;
+	DataStruct *MyThreadStructPtr;  // Contrived ?
+	MyThreadStructPtr = (DataStruct *) PassedPtr;
+
+         NumPlaces = ++( MyThreadStructPtr-> count);
+  	fprintf(stdout,"In Thread with Incremented Count of %d \n", NumPlaces);	
+	MyThreadStructPtr->DataPtr = malloc( NumPlaces * sizeof (int));	
+
+	for (i=0;i<NumPlaces;i++) MyThreadStructPtr->DataPtr[i] =10* i;
+
+	fprintf(stdout,"Thread is done and said so \n");	
+ 	pthread_exit(MyThreadStructPtr);
+}
+
+int main (int argc, char *argv[])
+{
+   pthread_t threadA ; // need to name the thread
+   pthread_t *threadPtr;
+ 	int rc, i; // return code and working index
+
+	DataStruct MainDataStruct; // A Thing 
+	DataStruct *MainDataStructPtr; // And a pointer to a thing
+
+	MainDataStruct.count = 5; // filled with data used in Thread 
+
+// Send to a thread for use
+
+      fprintf(stdout,"In main: creating thread with count %d \n", MainDataStruct.count);
+	if ( (rc = pthread_create(&threadA , NULL, ThreadA, &MainDataStruct)))
+     		{fprintf(stdout,"ERROR; return code from pthread_create() for ThreadA is %d\n", rc);
+         	exit(-1); }
+	   // Send it off to do some work 
+
+
+	   // and block until it finishes
+
+	(void) pthread_join(threadA , (void *) &MainDataStructPtr); 
+	fprintf(stdout,"Upon Join %d is Count \n", (int)((*MainDataStructPtr).count));
+	fprintf(stdout,"Back From Join with MainDataStruct Filled ?\n");
+
+        for (i = 0; i < (*MainDataStructPtr).count; i++)
+		fprintf(stdout,"%d\n",(*MainDataStructPtr).DataPtr[i]);	
+ 
+  	
+
+//	exit(0);
+}
diff --git a/Examples/StringThreadEx1.c b/Examples/StringThreadEx1.c
new file mode 100644
index 0000000..c039ee7
--- /dev/null
+++ b/Examples/StringThreadEx1.c
@@ -0,0 +1,39 @@
+/// Taken from Posix Tutorial -- https://computing.llnl.gov/tutorials/pthreads/
+// Example demonstrates race condition 
+// R. Trenary, 1/26/12
+//
+#include <pthread.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#define NUM_THREADS     5
+
+void *GoodbyeDennis(void *FileName)
+{
+   char  * File = malloc(strlen((char *) FileName)+1);
+     strncpy(File,(char *) FileName,strlen( (char *) FileName)+1);
+
+   printf("Goodbye, Dennis ! It's me, thread %s!\n", File);
+  pthread_exit(NULL);
+}
+
+int main (int argc, char *argv[])
+{
+   pthread_t threads[NUM_THREADS];
+   int rc;
+   long t;
+     char  *  FakeFile  = "FileName";
+   for(t=0; t<NUM_THREADS; t++){
+      printf("In main: creating thread %ld\n", t);
+     rc = pthread_create(&threads[t], NULL, GoodbyeDennis, (void *)FakeFile);
+      if (rc){
+         printf("ERROR; return code from pthread_create() is %d\n", rc);
+         exit(-1);
+      }
+   }
+
+   /* Last thing that main() should do */
+	pthread_exit(NULL);
+}
+
+
diff --git a/Examples/ThreadEx1.c b/Examples/ThreadEx1.c
new file mode 100644
index 0000000..035a84e
--- /dev/null
+++ b/Examples/ThreadEx1.c
@@ -0,0 +1,57 @@
+/// Taken from Posix Tutorial -- https://computing.llnl.gov/tutorials/pthreads/
+// Example demonstrates race condition 
+// R. Trenary, 1/26/12
+//
+#include <pthread.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h> 
+#define NUM_THREADS     5
+
+void *GoodbyeDennis(void *threadid)
+{long tid;
+   //char  * File = malloc(strlen((char *) FileName)+1);
+     //strncpy(File,(char *) FileName,strlen( (char *) FileName)+1);
+   tid = (long)threadid;
+   printf("Goodbye, Dennis ! It's me, thread #%ld!\n", tid);
+  pthread_exit(NULL);
+}
+void *SomeThread(void *SomeArg)
+{
+char *SomeName;
+SomeName=(char * )SomeArg;
+printf("%s SomeName in thread\n",SomeName);
+pthread_exit(NULL);
+
+}
+
+int main (int argc, char *argv[])
+{
+   pthread_t threads[NUM_THREADS];
+   int rc;   long t;
+   pthread_t *T; T=(pthread_t *) malloc(sizeof (pthread_t));
+rc = pthread_create(T,NULL,  SomeThread, (void *) "string");
+
+     //char  *  FakeFile  = "FileName"; For another day 
+   for(t=0; t<NUM_THREADS; t++){
+      printf("In main: creating thread %ld\n", t);
+     rc = pthread_create(&threads[t], NULL, GoodbyeDennis, (void *)t);
+      if (rc){
+         printf("ERROR; return code from pthread_create() is %d\n", rc);
+         exit(-1);
+      }
+   }
+// testing create syntax
+
+
+   /* Last thing that main() should do */
+	pthread_exit((void *)42);
+  return 42;
+}
+
+
+
+  
+
+
+
diff --git a/Examples/ThreadEx2.c b/Examples/ThreadEx2.c
new file mode 100644
index 0000000..1357e11
--- /dev/null
+++ b/Examples/ThreadEx2.c
@@ -0,0 +1,56 @@
+/// Modifications to Code Taken from Posix Tutorial 
+//  https://computing.llnl.gov/tutorials/pthreads/
+// Example demonstrates join and thread creating thread
+// R. Trenary, 1/26/12
+//
+#include <pthread.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <unistd.h>
+
+
+void *WorkerStart(void *threadid);
+
+void *BossStart(void *threadid)
+{ pthread_t Worker1,Worker2;
+	int rc;
+   long tid,t;
+   void *status;
+   t = (long)threadid;
+   printf("I am the boss and will create a worker\n");
+	
+    rc = pthread_create(&Worker1, NULL, WorkerStart, (void *)(t+1));
+      if (rc) { printf("failed to create woiker\n");exit(-1); } 
+        rc = pthread_create(&Worker2, NULL, WorkerStart, (void *)(t+2));
+      if (rc) { printf("failed to create woiker\n");exit(-1); }   
+  pthread_join(Worker1, &status); pthread_join(Worker2, &status);
+   printf("I am the boss and the worker %ld has finished \n", t);
+   pthread_exit(NULL);
+}
+void *WorkerStart(void *threadid)
+{ 
+   long tid;
+
+   tid = (long)threadid;
+   printf("I am the worker %ld and will work then meet the Boss again\n", tid);
+   usleep(1000); 
+   printf("Off to meet the boss ! \n");
+   pthread_exit(NULL);
+}
+
+int main (int argc, char *argv[])
+{
+   pthread_t Boss; 
+   int rc;
+   long t;
+   t = 10; 
+      printf("In main: creating thread %ld\n", t);
+      rc = pthread_create(&Boss, NULL, BossStart, (void *)t);
+      if (rc) { printf("failed to create boss\n");exit(-1); } 
+    pthread_join(Boss,(NULL));  
+   /* Last thing that main() should do */
+// pthread_exit();
+ return t+1;
+}
+
+
diff --git a/Examples/ThreadEx3.c b/Examples/ThreadEx3.c
new file mode 100644
index 0000000..b9658e5
--- /dev/null
+++ b/Examples/ThreadEx3.c
@@ -0,0 +1,109 @@
+
+/// Taken from Posix Tutorial -- https://computing.llnl.gov/tutorials/pthreads/
+// Example demonstrates Mutex control over Pies. Now add a Pie Producer
+// And then a conditional ? 
+// R. Trenary, 1/26/12
+//
+#include <pthread.h>
+#include <stdio.h>
+#include <stdlib.h>
+#define NUM_THREADS 5
+int Done [NUM_THREADS];     // A flag for each thread. AND them 
+			// and one unfinished means we still have work
+
+pthread_mutex_t MyMutex= PTHREAD_MUTEX_INITIALIZER; // A mutex and a cond (itional) 
+pthread_cond_t PiesToEat= PTHREAD_COND_INITIALIZER;  // Initialized 
+
+int PieceOfPies; // Important shared variable
+
+//==================================
+//    BAKER THREAD
+//==================================
+void *PieBaking(void *threadid)  // THE BAKER
+{int i, AllDone;
+int rc ; // Return Code 
+while (1)
+{ AllDone=1; 
+	for (i=0;i<NUM_THREADS;i++) AllDone= ( Done[i] && AllDone);  
+	if  (AllDone) {printf("All Eaters are done \n"); break;}
+
+	do {rc = pthread_mutex_trylock(&MyMutex); // does this lock if successful ? 		
+	      } while (rc !=0);
+	if (PieceOfPies == 0) {PieceOfPies +=2;
+			printf("Baked a couple of of pies\n");
+		} 
+			// make a couple of pies if needed
+
+	
+	pthread_cond_broadcast(&PiesToEat);
+                   pthread_mutex_unlock(&MyMutex);
+}
+	printf("Done Baking\n");
+ 	pthread_exit(NULL);
+}
+// ==================================
+//   EATER THREAD
+// ==================================
+void *PieEating(void *threadid)
+{  
+   long tid;
+   int rc = -1; // Initialize to not acquired
+   tid =  * ((long *) threadid);
+   int PiecesEaten = 0;	 // Control Pieces Eaten by Thread
+	Done[tid] = 0; // Not Done 
+     while (PiecesEaten < 2)	
+     {	
+	while ( rc !=0 )
+	{   rc = pthread_mutex_trylock(&MyMutex);  // will return non zero if not acquired 	
+	     usleep(100); // sleep and try again
+	}	
+	printf(" Thread %lu acquired lock \n", tid);
+	// pthread_mutex_lock(&MyMutex);	
+	    if (PieceOfPies == 0) (pthread_cond_wait(&PiesToEat, &MyMutex));	
+  	    printf("Eating pie for Dennis.  It's me, thread #%ld!\n", tid);
+		PieceOfPies--; // critical section 
+	 pthread_mutex_unlock(&MyMutex);
+	// and sleep some of it off 
+	usleep(100);
+	rc = -1;	
+	printf("%u available piece of pies \n",PieceOfPies);
+	PiecesEaten++; // Ate a piece of pie 	
+       }
+	Done[tid] = 1; // All done 
+	printf("Thread %lu is done and said so \n",tid);	
+         pthread_exit(NULL);
+}
+
+int main (int argc, char *argv[])
+{
+   pthread_t threads[NUM_THREADS];
+   pthread_t PieBaker;
+   int rc;
+   long t;
+    long *Tptr[NUM_THREADS];
+	PieceOfPies = 0;
+   for(t=0; t<NUM_THREADS; t++)
+    { Tptr[t] = (long *) malloc(sizeof(long));
+     (*Tptr[t]) = (long) t;
+      printf("In main: creating thread %lu\n", t);
+      rc = pthread_create(&threads[t], NULL, PieEating, (void *)Tptr[t]);
+      if (rc){
+         printf("ERROR; return code from pthread_create() for eaters is %d\n", rc);
+         exit(-1); }
+     }
+    	rc = pthread_create(&PieBaker, NULL, PieBaking, (void *)t);
+       	if (rc){
+         	printf("ERROR; return code from pthread_create() for baker is %d\n", rc);
+        	 exit(-1);}
+     
+	printf("looks like pies are done cooking\n");
+   		/* Last thing that main() should do */
+	pthread_mutex_destroy(&MyMutex);
+	pthread_cond_destroy(&PiesToEat);
+   	pthread_exit(NULL);
+	printf("Done in main\n");
+	exit(0);
+}
+
+
+
-- 
GitLab