00001
00002
00003
00004
00005 #include <j2k/Fred/JFile.cpp>
00006 #include <j2k/Fred/Error/JError.cpp>
00007
00008 #include <j2k/445/Posix/Basic_PThread.cpp>
00009 #include <j2k/445/Posix/Mutex.cpp>
00010
00011 #include <j2k/445/TFTP.hpp>
00012 #include <j2k/Fred/JFile.cpp>
00013 #include <j2k/Fred/Error/JError.cpp>
00014
00015 #include <j2k/445/TFTP_Project.cpp>
00016
00017 Mutex m;
00018
00019 class Dumb : public Basic_PThread {
00020 public:
00021 Dumb( char* ss ) : Basic_PThread() { s = ss; }
00022
00023 virtual void run() {
00024 m.lock();
00025 for( int i = 0; i < 10000; i++ ) {
00026 printf("%s", s );
00027 }
00028 m.unlock();
00029 sched_yield();
00030 for( int h = 0; h < 10000; h++ ) {
00031 char* d2 = new char[ h * 2 ];
00032 sched_yield();
00033 delete [] d2;
00034 }
00035 }
00036
00037 char* s;
00038
00039 };
00040
00041 char* damn;
00042
00043 char* buffer;
00044
00045 void filet() {
00046 JFile f("test.txt", "rb");
00047
00048 char* t = f.getFileName();
00049 printf("[%s]%d]", t, strlen( t ) );
00050
00051 char buf[2000000];
00052 memset( buf, 0, 2000 );
00053 size_t len = f.getData( buf, 1000 );
00054
00055
00056 printf("[%s]\n", buf );
00057 printf("%u\n", len );
00058
00059 buffer = new char[ 3524 ];
00060 memset( buffer, 0, 234 );
00061 memcpy( buffer, buf, 2000 );
00062 delete[] buffer;
00063 fflush( stdout );
00064 }
00065
00066 int main() {
00067 filet();
00068 Dumb d( ".");
00069 filet();
00070 m.lock();
00071 d.start();
00072 Dumb d3( "3");
00073 m.unlock();
00074 filet();
00075 d3.start();
00076 Dumb d2( "2");
00077 d2.start();
00078 filet();
00079 Dumb d1( "1");
00080 d1.start();
00081 filet();
00082 Dumb d4( "8");
00083 d4.start();
00084 Dumb d5( "6");
00085 filet();
00086 d5.start();
00087 filet();
00088 Dumb d6( "5");
00089 d6.start();
00090
00091 filet();
00092 filet();
00093 filet();
00094 filet();
00095 filet();
00096 filet();
00097
00098 while(1) {
00099 printf("-");
00100 d1.start();
00101 d6.start();
00102 d2.start();
00103 d5.start();
00104
00105 }
00106 return 0;
00107 }