X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSIGNALSComponent%2FSIGNALSComponent_Impl.cxx;h=8141c7c895574a43c7630198515629c590edc0cd;hb=f16746243f713d62e90d43138448690ae38edfd1;hp=1caa05a239c19bf3f81df0e966d99217d6658fe6;hpb=b745752172ed3fb01f14b6ffbd82cba332bf6751;p=samples%2Fcomponent.git diff --git a/src/SIGNALSComponent/SIGNALSComponent_Impl.cxx b/src/SIGNALSComponent/SIGNALSComponent_Impl.cxx index 1caa05a..8141c7c 100755 --- a/src/SIGNALSComponent/SIGNALSComponent_Impl.cxx +++ b/src/SIGNALSComponent/SIGNALSComponent_Impl.cxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2014 CEA/DEN, EDF R&D, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -6,7 +6,7 @@ // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public // License as published by the Free Software Foundation; either -// version 2.1 of the License. +// version 2.1 of the License, or (at your option) any later version. // // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -26,7 +26,9 @@ // Module : SuperVisionTest // #include +#ifndef WIN32 #include +#endif #include #include #include @@ -72,23 +74,40 @@ char* SIGNALSComponent_Impl::getVersion() CORBA::Long SIGNALSComponent_Impl::SIGSEGVfunc() { beginService( " SIGNALSComponent_Impl::SIGSEGVfunc" ); +#ifndef WIN32 cout << pthread_self() << "SIGNALSComponent_Impl::SIGSEGVfunc" << endl ; +#else + cout << pthread_self().p << "SIGNALSComponent_Impl::SIGSEGVfunc" << endl ; +#endif int S = 1+(int) (15.0*rand()/(RAND_MAX+1.0)); + +#ifndef WIN32 while ( S ) { S = sleep( S ) ; } - long nullptr = *NULLPTR ; +#else + Sleep(S*1000); +#endif + long _nullptr = *NULLPTR ; endService( " SIGNALSComponent_Impl::SIGSEGVfunc" ); - return nullptr ; + return _nullptr ; } CORBA::Long SIGNALSComponent_Impl::SIGFPEfunc( CORBA::Long a , CORBA::Long b ) { beginService( " SIGNALSComponent_Impl::SIGFPEfunc" ); +#ifndef WIN32 cout << pthread_self() << "SIGNALSComponent_Impl::SIGFPEfunc" << endl ; +#else + cout << pthread_self().p << "SIGNALSComponent_Impl::SIGFPEfunc" << endl ; +#endif int S = 1+(int) (15.0*rand()/(RAND_MAX+1.0)); +#ifndef WIN32 while ( S ) { S = sleep( S ) ; } +#else + Sleep(S*1000); +#endif long c = a/b ; endService( " SIGNALSComponent_Impl::SIGFPEfunc" ); return c ; @@ -97,7 +116,12 @@ CORBA::Long SIGNALSComponent_Impl::SIGFPEfunc( CORBA::Long a , CORBA::Long b ) { void SIGNALSComponent_Impl::MethodToKill() { beginService( " SIGNALSComponent_Impl::MethodToKill" ); while ( 1 ) { - sleep(1) ; +#ifndef WIN32 + sleep(1); +#else + Sleep(1000); +#endif + } endService( " SIGNALSComponent_Impl::MethodToKill" ); return ;