diff options
Diffstat (limited to 'ChangeLog-98b')
-rw-r--r-- | ChangeLog-98b | 856 |
1 files changed, 0 insertions, 856 deletions
diff --git a/ChangeLog-98b b/ChangeLog-98b deleted file mode 100644 index b49060b3619..00000000000 --- a/ChangeLog-98b +++ /dev/null @@ -1,856 +0,0 @@ -Thu May 14 15:28:42 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * ace/config-kcc-common.h: Added the ACE_HAS_USING_KEYWORD to the - config file. Thanks to Ben Eng <ben@jetpen.com> for reporting - this. - - * examples/Service_Configurator/Misc: Updated the Timer_Service - test to demonstrate the new service configurator feature. It's - AWESOME! - - * ace/Svc_Conf.h, - ace/Svc_Conf.l: - Added a super-cool new feature that allows us to parse service - configurator directives from a string rather than from a - svc.conf file. - - * ace/Svc_Conf.l (yywrap): Free up ace_yy_current_buffer in yywrap - to prevent a memory leak. Thanks to Paul Motuzenko - <p_motuzenko@hotmail.com> for reporting this. - - * examples/IPC_SAP/SOCK_SAP/CPP-inserver-poll.cpp: Enhanced the - implementation to make it easier to follow and to support the - latest features of CPP-inclient.cpp. - - * ace/OS.h (ACE_OS): Added a wrapper for strcspn(3s). - - * examples/IPC_SAP/SOCK_SAP/CPP-inserver-fancy.cpp: Added more - cool changes to the CPP-inserver.cpp example and renamed it. - -Thu May 14 14:46:02 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/OS.h: Moved the definition of ACE_Export before it is used. - -Thu May 14 13:22:46 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/Message_Block.h: - * ace/Message_Block.cpp: - The static duplicate() method can take pointer to a const - Message_Block. - -Wed May 13 18:46:28 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/IPC_SAP/SOCK_SAP/CPP-{inserver,inclient}.cpp: Added - profile timing to the server so we can compute socket - performance metrics. Also generalized the tests so we can - experiment with both oneway and twoway calls. - -Wed May 13 19:20:27 1998 James C Hu <jxh@cs.wustl.edu> - - * ace/OS.h: - * ace/OS.i: - * ace/OS.cpp: Added a substitute gets implementation for when - ACE_LACKS_GETS. The substitute is actually safer than gets, so - I may end up making gets call the new routine instead of - Standard C's. - - * ace/config-g++-common.h: Changed the g++ common file so that - 2.8.1 acts like EGCS does. This worked on Solaris 2.5.1. We'll - see how other's fare. - -Wed May 13 18:13:12 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.3 released. - -Wed May 13 11:29:56 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * performance-tests/Synch-Benchmarks/Options.cpp (print_results): - My previous change to add print_results functionality when - ACE_HAS_GETRUSAGE broke this on Win32. - - * ace/config-g++-common.h (ACE_HAS_GNUC_BROKEN_TEMPLATE_INLINE_FUNCTIONS): - Made this macro defined for all versions of g++. - -Wed May 13 09:26:48 1998 David L. Levine <levine@cs.wustl.edu> - - * many *.{h,i,cpp,idl} files: inserted RCS keyword string. - -Wed May 13 00:35:25 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace: Added ACE_Export to a bunch of class in ACE. Thanks to - Gonzalo A. Diethelm (gonzo@ing.puc.cl) for pointing this out. - -Tue May 12 15:16:04 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/config-WinCE.h: - * ace/OS.h: Stopped using non-static object manager for CE. This - is causing some problem at process shutdown. - - * ace/Acceptor.cpp: Made CE friendly. - - * ace/Process.cpp ([~]ACE_Process_Options): Moved things around to - avoid compilation errors on CE. Secret: CE doesn't have - environment variables. - -Tue May 12 13:28:05 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/OS.h: - The ACE_INLINE_FOR_GNUC macro must be defined (as the null - token) if ACE_HAS_GNUC_BROKEN_TEMPLATE_INLINE_FUNCTION is not - defined. - -Tue May 12 12:30:55 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/README: - * ace/config-g++-common.h (ACE_HAS_GNUC_BROKEN_TEMPLATE_INLINE_FUNCTIONS): - Added this new macro to get around a bug which only happens in - GNUC 2.7.xx. It mistakenly refers to the template definition as - the place where a function is used. - - * ace/OS.h (ACE_INLINE_FOR_GNUC): Added the macro to fix the GNUC - bug. - - * ace/Thread_Manager.h: Added above macro to set_next and - get_next. - -Tue May 12 12:11:36 1998 Bob Laferriere <laferrie@gsao.med.ge.com> - - * ace/Process.{h,cpp}: modifications to make the environment buffer - and number of environment variables tunable in the constructor. - I also fixed a logic error which previously attempted to write - beyond an array bounds of the array of pointers into the - environment buffer. I made the environment_argv_ buffer tunable - as well. The new constructor takes the old hardcoded static sizes - as the default dynamic sizes for backwards compatiblity. - The behavior is to return -1 if the maximum buffer size or - maximum number of environment arguments has been reached in - following with the prior behavior. I opted not to make the members - grow as needed so the class would still follow it's prior behavior. - This would be simple to add, however. - -Tue May 12 08:29:50 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Malloc.cpp (ACE_Allocator::instance): replaced dynamic - allocation of the default ACE_Allocator with allocation from - the data segment. Thanks to Ben Eng <ben@jetpen.com> for - providing the stack trace that revealed the problem. - - * ace/Malloc.h: added comments to not add data members to - ACE_Allocator or ACE_New_Allocator. - - * bin/g++dep: changed PATH to pick up /project/doc/pkg/gnu/bin/g++, - and removed GNUG_INCLUDE. Thanks to Ganesh Pai <gpai@voicetek.com> - for reporting problems with the old version on Linux. - -Tue May 12 02:59:27 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * performance-tests/Misc/childbirth_time.cpp: Added ACE_OS::sleep - (0) before all timing sections start. This ensures we own a - fresh time slice when the timing begin and reduce the chances of - getting preempted - -Tue May 12 00:42:05 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * bin/dsp2dsp.pl: This file clones a new MSVC 5.0 dsp file based - on setting from another dsp file. It is most useful in adding - new project files into tests/. - - * tests/WinCE/*: New project files. Updated the workspace. - Please see CE-status for the current progress. - - * tests/Buffer_Stream_Test.cpp: - * tests/Conn_Test.cpp: - * tests/Enum_Interfaces_Test.cpp: - * tests/Handle_Set_Test.cpp: - * tests/Hash_Map_Manager_Test.cpp: - * tests/Message_Block_Test.cpp: - * tests/Reactors_Test.cpp: - * tests/Thread_Manager_Test.cpp: - * tests/Thread_Mutex_Test.cpp: Made CE friendly. - - * tests/test_config.h: Moved some common definitions shared among - CE and other platforms out. - - * ace/Acceptor.cpp: - * ace/Acceptor.h: - * ace/Connector.cpp: - * ace/Connector.h: - * ace/Stream.cpp: - * ace/Svc_Handler.cpp: - * ace/Svc_Handler.h: - * ace/Synch.h: - * ace/Synch.i: CE stuff. - - * ace/config-WinCE.h: Defined ACE_DEFAULT_SERVER_HOST in UNICODE - here to overwrite the default setting. - - * ace/Synch.i (ACE_Lock): CE needs a default ctor here. - -Mon May 11 15:43:01 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/WinCE/ce_tests.dsw: - * tests/WinCE/Atomic_Op_Test.dsp: - * tests/WinCE/Barrier_Test.dsp: - * tests/WinCE/Basic_Types_Test.dsp: - * tests/WinCE/Map_Manager_Test.dsp: Added/Updated project files. - - * tests/Atomic_Op_Test.cpp: - * tests/Barrier_Test.cpp: - * tests/Basic_Types_Test.cpp: Made them CE friendly. - - * ace/config-WinCE.h: Only define ACE_LACKS_INLINE_FUNCTIONS when - building debug version of ACE for SH series CPU. - - * WindozeCE/WindozeCEDlg.cpp: Updated the initial message after the - display window but before ACE console progrm started. - - -Mon May 11 15:43:01 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.{i,cpp}: Moved CE's impelmentation of ACE_OS::fprintf to - cpp file. - -Mon May 11 15:15:24 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/Thread_Manager.h: - Removed bogus ACE_INLINE macros in class declaration, they were - making the SGI compiler *very* unhappy. - -Mon May 11 15:11:11 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.cpp (ctime_r): Renamed the fmtstr to - ACE_OS_CTIME_R_FMTSTR for we may need to use similar scheme to - fix other bugs in the future. - -Mon May 11 14:50:47 CDT 1998 Everett Anderson <eea1@cs.wustl.edu> - - * ace/Name_Proxy.cpp: Changed one last recv to recv_n. - -Mon May 11 13:14:22 1998 Chris Gill <cdgill@cs.wustl.edu> - - * ace/RB_Tree.{cpp,h,i}: (new) Red-Black Tree data structure - implementation. A Red-Black Tree is an efficient - self-balancing binary tree that uses recoloring to - minimize rotations while rebalancing on insertion or - deletion of a tree node. Items in the tree are stored - according to a key provided at insertion. This - implementation is an OO rendition of the ADT described - in Cormen, Leiserson, Rivest, "Introduction to Algorithms" - (c) 1990, MIT. - -Mon May 11 12:31:41 1998 Steve Huston <shuston@riverace.com> - - * ace/OS.h: Made ACE_LD_SEARCH_PATH, ACE_LD_SEARCH_PATH_SEPARATOR_STR, - ACE_DLL_PREFIX, ACE_DLL_SUFFIX settable via config.h. - - * ace/config-hpux-10.x.h: - ace/config-hpux11.h: Set ACE_LD_SEARCH_PATH, ACE_DLL_SUFFIX. - Thanks to Kirill Rybaltchenko and David Levine for identifying - this problem. - -Mon May 11 12:27:05 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/ACE.cpp (send_n): retry if ACE::send () fails due to - EWOULDBLOCK. Thanks to Dave Brackman <dbrackma@OhioEE.com> - for reporting this. - - * tests/Env_Value_Test.cpp (main): check return values of - options.setenv () calls. Thanks to Bob Laferriere - <laferrie@gsao.med.ge.com> for recommending this. - - * include/makeinclude/platform_vxworks5.x_ghs.GNU: instead of - using GNU ranlib386 after using GHS ax for i386 targets, just - use GNU ar386. - - * ace/gethrtime.cpp: added some comments about GHS asm support. - - * java/netsvcs/{Logger,Time}/Makefile, - java/tests/netsvcs/Logger/Makefile: - replaced WRAPPER_ROOT with ACE_ROOT. - -Mon May 11 05:14:18 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/config-WinCE.h: Added ACE_HAS_NON_STATIC_OBJECT_MANAGER. CE - console programs have to set this flag because the main - functions is actually renamed and running in a threads. - - * tests/test_config.h: Excluded class and macros to redirect - debugging messages to files under CE. This make debugging a bit - easier but we should eventually put them back under CE. - - * tests/Map_Manager_Test.cpp: Made CE friendly. - - * ace/Hash_Map_Manager.cpp: Some ACE_ERROR were not CE friendly. - - * ace/Profile_Timer.{h,i}: - * ace/Synch.{h,i}: Moved inline function definitions to Synch.i - file. Windows CE can't grok any inline at all. - -Mon May 11 02:43:45 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * performance-tests/Misc/childbirth_time.cpp (main): Added - a new method for benchmarking ACE_Thread_Manager::spawn_n. - Added other cosmetic changes. - -Sun May 10 23:20:36 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Token.cpp: Adding more debugging statements. - - * ace/Asynch_Acceptor.cpp (should_reissue_accept): Added template - method that decides whether a new asynchronous accept should be - issued. - -Sun May 10 23:28:57 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.cpp(inherit_log_msg): - * ace/Log_Msg.cpp (thr_desc): Wait on Thread_Descriptor's lock - instead of the "global" Thread_Manager lock. - - * ace/Thread_Manager.cpp: Moved acquire_release() from - ACE_Thread_Manager to ACE_Thread_Descriptor. This method is - called from ACE_Log_Msg::thr_desc to prevent a thread from using - its thread descriptor before it is fully built. The change - relieve spwaned threads from waiting for other threads created - in the same spwan_n call to be created before it can start - running. - - (insert): Added an extra argument to control whether we want to - insert the newly created thread into ACE_Thread_Manager's thread - table or not. Notice that it is default to 1 to remain the - original behavior in case anyone is using this class/function - directly in their code. However, in ACE_Thread_Manager, we - always prevent it from inserting because we always register - thread descriptors from spawn_i. - -Sun May 10 01:51:29 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.h: Renamed ACE_OS::Time_To_The_Beginning to - ACE_OS::FILETIME_to_timval_skew. - - * ace/OS.cpp: Found the problem in ACE_OS::ctime_r. An internal - compiler bug (?) caused the bug. The solution: move the format - string out as a const string instead of putting it in sprintf - directly. Weird. - - * ace/Log_Record.{h,cpp}: Made priority_name_ and its access - function CE friendly. - -Sat May 9 20:09:13 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Thread_Manager.h: Changed the type of lock used by - <thread_desc_freelist_> to ACE_SYNCH_MUTEX. Or else, it won't - compile on platforms that doesn't support thread. Thanks to - Woody Zenfell <woody@arl.wustl.edu> for reporting this. - -Fri May 08 22:29:01 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/SOCK_Dgram_Mcast.cpp (subscribe): CE UNICODE related fix. - -Fri May 8 14:18:46 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Thread_Manager.h (ACE_Thread_Descriptor): Added ACE_INLINE - to declarations of set_next and get_next to get around a bug in - a version of g++. - -Fri May 8 11:57:23 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * ace/Map_Manager.cpp: Fixed a bug where we weren't calling - close_i() when resizing the buffer. - - * ace/Thread_Manager.cpp (set_grp): In - ACE_Thread_Manager::{get,set}_grp we must check to see that we - have a valid pointer after the ACE_FIND. Otherwise a seg fault - occurs. Thanks to Chris Lahey <CLahey@cccis.com> for reporting - this. - -Fri May 08 09:47:50 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-linux-common.h: only use ACE_HAS_POLL with glibc2. - Thanks to Saneyasu <sane@sail.t.u-tokyo.ac.jp> for reporting - this. - - * ace/OS.i (sleep): On Linux without ::poll () (prior to glibc), - copy the ACE_Time_Value argument because the system modifies it. - - * include/makeinclude/platform_osf1_4.0.GNU: moved -lm from LIBS - to MATHLIB. - - * performance-tests/UDP/Makefile: added $(MATHLIB) to LDLIBS. - - * tests/Aio_Platform_Test.cpp (have_asynchio): use - _SC_LISTIO_AIO_MAX instead of _SC_AIO_LISTIO_MAX if it's - #defined. It is on DU 4.0. - -Fri May 08 08:43:42 1998 Steve Huston <shuston@riverace.com> - - * include/makeinclude/platform_hpux_gcc.GNU: Added $(PIC) to - definition of SOFLAGS. Thanks to Kirill Rybaltchenko - <Kirill.Rybaltchenko@cern.ch> for this fix. - - * ace/SOCK_Dgram_Mcast.cpp (subscribe): Added code for Win32 so that - if a subscribe is done without specifying an interface, the mcast - address is subscribed to on each non-loopback interface. This works - around a bug in NT's winsock in the presence of multiple IP - interfaces. Won't hurt 95 - will just run a bit slower than it - otherwise would. - - * examples/Reactor/Multicast/Multicast.{mdp,mak}: Added MSVC 4.2 - workspace for this example. - -Fri May 8 03:43:25 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Thread_Manager.{h,cpp}: Added yet one more member variable - into Thread_Descriptor to keep track of registration of - Thread_Descriptors. By adding this variable, we can avoid an - extra locking in remove_thr for most cases (normal cases ;-). - Thanks to the inspiration from Arturo Montes - <mitosys@colomsat.net.co>. - -Wed May 06 18:35:21 1998 Steve Huston <shuston@riverace.com> - - * ace/ACE.cpp (get_ip_interfaces): Reset buf_len before each call to - get_reg_key to get registry value for device's IP address. It gets - overwritten on each call to get_reg_key. - - * include/makeinclude/platform_mvs.GNU: Added definition for PIC. - Though not related to position-independent-code, it is a switch that - makes shared lib builds work right. Removed the old SOBUILD def. - Thanks to Chuck Gehr for helping with this strategy. - -Thu May 07 22:06:13 1998 Ben Eng <ben@jetpen.com> - - * ace/config-kcc-common.h,config-linux-{common,kcc}.h: updated - KCC/Linux support, and integrated into config-linux-common.h. - -Thu May 7 20:32:20 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/Service_Configurator/IPC-tests/client/local_dgram_client_test.cpp - (main): Oops, we need to move the unlink() AFTER we create the - file... Thanks to Sandro Doro <doros@aureus.sublink.org> for - reporting this. - -Wed May 6 02:57:40 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Filecache.h (ACE_Filecache_Handle): Removed - ACE_EXPORT_DECLARE and specified ACE_Export directly for - ACE_Filecache_Handle and ACE_Filecache in calss declarations. - - * ace/Thread_Manager.{h,i,cpp}: A bug was found by Arturo Montes - <mitosys@colomsat.net.co> who noticed that when a thread was - spawned and then exited immediately, its thread descriptor might - get freed before even get registered into the thread table kept - by the Thread_Manager. Although it doesn't make any sense to - spawn a thread just to let it return immediately, a middleware - shouldn't restrict the way how users want to use it. - - I got around this problem by adding a lock into - Thread_Descriptor. Before spawning a thread, the Thread Manager - will first grab the lock. It won't release the lock until - calling append thread, at which point, the Thread_Descriptor of - the thread has been stashed into the table. Removing the - Thread_Descriptor also requires to hold this lock and release - the lock before the Thread_Descriptor is "freed." Therefore, - if a thread exit before its Thread_Manager ever gets a chance to - register it, it will block and waiting. - - The type of the lock is defined by ACE_DEFAULT_THREAD_MANAGER_LOCK - which, by default, is ACE_Thread_Mutex. User can change the - definition by defining in their config.h file. For example, if - you can be sure that all your threads will run for an extended - long time (which, in most case, should be true,) you can disable - this feature by defining this as a ACE_Null_Mutex to speed up - spawning and termination of threads. - - (thread_desc_freelist_): Added a free list to Thread_Manager to - recycle Thread_Descriptor. By default, this free list - pre-allocate 0 Thread_Descriptor and has low-water-mark of 1, - increment count 1 and a huge (25000) high water mark. That is, - if you use a Thread_Manager for an extended period of time, you - won't have to dynamically allocate memory for Thread_Descriptor - for every thread after your system is stable (the thread count - fluctuates between some certain values.) - - There are two ways to change the settings. First, by defining - ACE_DEFAULT_THREAD_MANAGER_LWM, ACE_DEFAULT_THREAD_MANAGER_HWM, - ACE_DEFAULT_THREAD_MANAGER_INC, and - ACE_DEFAULT_THREAD_MANAGER_PREALLOC in your <config.h> file. - This changes the default setting of your ACE. (The global - Thread_Manager use this setting.) Or, you can specify these - values when creating a Thread_Manager. - - * ace/Free_List.cpp (alloc,dealloc): Don't grab the lock in these - two functions. They only get called from add() and remove() - which hold the lock before making the call. Actually, they also - gets called from the constructor and destructor. But that - shouldn't be a problem. - - * tests/Reactor_Notify_Test.cpp (run_test): Moved the #endif of - ACE_HAS_THREADS down to avoid compilation error on non-threaded - platforms. - -Thu May 07 19:08:22 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.2 released. - -Thu May 7 14:10:41 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/Timer_Hash_T.h: - * ace/Timer_Hash_T.cpp: - * ace/Timer_Heap_T.cpp: - * ace/Timer_Wheel_T.cpp: - The classes had a INHERITED typedef for the base class, but - Solaris defines a macro by the same name. This causes very weird - problems with EGCS (and probably other g++ versions). - -Thu May 07 04:15:23 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Profile_Timer.cpp (elapsed_time): Treat Win32 differently - so I can use this function with WinCE Emulation build. The - problem is that Win32 can't convert __int64 to double. - - * ace/OS.{h,cpp} (ACE_Time_Value): (Win32 only) Added a new static - const member (Time_To_The_Beginning) of type DWORDLONG (unsigned - _int64) to adjust the time skew between FILETIME and POSIX time. - Changed the type of _100ns to ULARGE_INTEGER to eliminate - unnecessary computation. - -Wed May 6 23:58:40 1998 Carlos O'Ryan <coryan@swarm.cs.wustl.edu> - - * ace/XtReactor.cpp: - The signature for the open() method of the notify pipe has been - modified. - -Wed May 6 23:28:47 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/Service_Configurator/IPC-tests/client/local_dgram_client_test.cpp: - Fixed a couple of mistakes that were causing the UNIX domain - sockets not to work. Thanks to Sandro Doro - <doros@aureus.sublink.org> for recommending this. - - * performance-tests/Misc/context_switch_time.cpp (svc): An 'i' - was being defined twice, gorp! It's fixed now! - -Wed May 06 22:00:14 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-linux-common.h: only #define - ACE_HAS_4_4BSD_SENDMSG_RECVMSG with __GLIBC__. Thanks - to Chanaka Liyanaarachchi <chanakal@ittc.ukans.edu> for - reporting the lack of CMSG_DATA support on RedHat 4.2. - -Wed May 06 18:35:21 1998 Steve Huston <shuston@riverace.com> - - * ace/ACE.cpp (get_ip_interfaces): Reset buf_len before each call to - get_reg_key to get registry value for device's IP address. It gets - overwritten on each call to get_reg_key. - - * include/makeinclude/platform_mvs.GNU: Added definition for PIC. - Though not related to position-independent-code, it is a switch that - makes shared lib builds work right. Removed the old SOBUILD def. - Thanks to Chuck Gehr for helping with this strategy. - -Wed May 06 16:32:53 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Filecache.h (ACE_Filecache_Handle): Removed - ACE_EXPORT_DECLARE and specified ACE_Export directly for - ACE_Filecache_Handle and ACE_Filecache in calss declarations. - - * ace/Thread_Manager.{h,i,cpp}: A bug was found by Arturo Montes - <mitosys@colomsat.net.co> who noticed that when a thread was - spawned and then exited immediately, its thread descriptor might - get freed before even get registered into the thread table kept - by the Thread_Manager. Although it doesn't make any sense to - spawn a thread just to let it return immediately, a middleware - shouldn't restrict the way how users want to use it. - - I got around this problem by adding a lock into - Thread_Descriptor. Before spawning a thread, the Thread Manager - will first grab the lock. It won't release the lock until - calling append thread, at which point, the Thread_Descriptor of - the thread has been stashed into the table. Removing the - Thread_Descriptor also requires to hold this lock and release - the lock before the Thread_Descriptor is "freed." Therefore, - if a thread exit before its Thread_Manager ever gets a chance to - register it, it will block and waiting. - - The type of the lock is defined by ACE_DEFAULT_THREAD_MANAGER_LOCK - which, by default, is ACE_Thread_Mutex. User can change the - definition by defining in their config.h file. For example, if - you can be sure that all your threads will run for an extended - long time (which, in most case, should be true,) you can disable - this feature by defining this as a ACE_Null_Mutex to speed up - spawning and termination of threads. - - (thread_desc_freelist_): Added a free list to Thread_Manager to - recycle Thread_Descriptor. By default, this free list - pre-allocate 0 Thread_Descriptor and has low-water-mark of 1, - increment count 1 and a huge (25000) high water mark. That is, - if you use a Thread_Manager for an extended period of time, you - won't have to dynamically allocate memory for Thread_Descriptor - for every thread after your system is stable (the thread count - fluctuates between some certain values.) - - There are two ways to change the settings. First, by defining - ACE_DEFAULT_THREAD_MANAGER_LWM, ACE_DEFAULT_THREAD_MANAGER_HWM, - ACE_DEFAULT_THREAD_MANAGER_INC, and - ACE_DEFAULT_THREAD_MANAGER_PREALLOC in your <config.h> file. - This changes the default setting of your ACE. (The global - Thread_Manager use this setting.) Or, you can specify these - values when creating a Thread_Manager. - - * ace/Free_List.cpp (alloc,dealloc): Don't grab the lock in these - two functions. They only get called from add() and remove() - which hold the lock before making the call. Actually, they also - gets called from the constructor and destructor. But that - shouldn't be a problem. - - * tests/Reactor_Notify_Test.cpp (run_test): Moved the #endif of - ACE_HAS_THREADS down to avoid compilation error on non-threaded - platforms. - -Tue May 5 14:12:08 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * include/makeinclude/platform_sco5.0.0-fsu-pthread.GNU: Added a - platform config file courtesy of Arturo Montes - <mitosys@colomsat.net.co>. - -Tue May 05 08:35:18 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-irix6.x-sgic++-nothreads.h: updated the determination - of ACE_SIZEOF_LONG_DOUBLE. Thanks to Bob Laferriere - <laferrie@gsao.med.ge.com> for providing the fix. - - * include/makeinclude/platform_sunos5_g++.GNU: use -gstabs+ instead - of -g on Solaris86. - - * etc/Svc_Conf_l.cpp.diff: updated. It's magic, Nanbor :-) - The problem seems to be due to an old version left in - /tmp/Svc_Conf_l.cpp, which confuses flex. - - * ace/config-linux-common.h,config-g++-common.h: moved - ACE_HAS_PENTIUM (with i386) from config-linux-common.h - to config-g++-common.h. - - * ace/config-linux-common.h: added ACE_HAS_POLL, so we - don't use ::select () in ACE_OS::sleep (). Linux's - ::select () modifies its timeout argument! - - * ace/OS.i (gethrtime): added RDTSC support for all g++ - _and_ ACE_HAS_PENTIUM platforms. - - * ace/config-vxworks5.x.h: added ACE_HAS_PENTIUM with GHS - on Intel platforms. - - * ace/Makefile: for GHS on Intel 8086, build gethrtime.cpp. - It's used to provide a high-resolution time using the - Pentium RDTSC instruction. I don't know how to get - GHS' asm to do it, so it uses g++. - - * ACE-INSTALL.html: added note about carefully installing - egcs on Linux. Thanks to Kurt Sussman <kls@best.com> for - tracking down the cause of mysterious link failures. - -Tue May 05 02:15:49 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Svc_Conf_l.cpp: I know, I know. I shouldn't mess with this - file directly. But I couldn't manufacture this file even with - the stock Svc_Conf.l using Doug's flex. So, I reckon I'll just - check this in now and fix the Svc_Conf_l.diff later. - - * ace/Service_Config.{h,cpp} (process_directive): Standard CE - stuff. - - * WindozeCE/WinAdapter*.*: - * WindozeCE/WindozeCE*.*: Replaced the old adapter for CE with a - new one. The new version allows uses to scroll thru the - "console" output. - -Mon May 04 17:09:39 1998 David L. Levine <levine@cs.wustl.edu> - - * performance-tests/Misc/context_switch_time.cpp: lots of - cleanup. The main changes were the use of ACE_THR_PRI_FIFO_DEF - for the default therad priority, and removal of some - unnecessary thr_yield () calls. - - * tests/Aio_Platform_Test.cpp: added arguments to main (), - removed #includes that are already in ace/OS.h, and added - ACE_START_TEST/ACE_END_TEST calls. - -Mon May 4 13:08:18 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * ace/config-sunos5.6.h: Removed a mysterious "30" at the end of - an #undef. Thanks to J. Russell Noseworthy - <rnosewor@objectsciences.com> for reporting this problem. - -Mon May 04 08:49:09 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/OS.cpp (ACE_Thread_Adapter::invoke): with ACE_NEEDS_LWP_PRIO_SET, - added the call to ACE_OS::thr_setprio () so that the LWP priority - will be set if running in the RT class. Applications no longer - have to be concerned with this. - - * performance-tests/Misc/preempt.cpp (svc): removed - ACE_OS::thr_setprio () calls to set LWP priority, now that ACE - handles that internally. - - * include/makeinclude/platform_*linux.GNU: added "s" to - ARFLAGS, so that ranlib is no longer necessary. - -Sun May 03 22:37:38 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Parse_Node.cpp (open_handle): WinCE doesn't support - ExpandEnvironmentStringA. - - * ace/config-win32-common.h: Only define ACE_HAS_GETRUSAGE when - ACE_HAS_WINNT4 != 0. Thanks to Paul Motuzenko - <p_motuzenko@hotmail.com> for reporting this. - -Sun May 03 01:58:47 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.1 released. - -Sat May 2 14:35:04 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * tests/Reactor_Notify_Test.cpp: Factored out some common code to - make the test more concise. - - * tests/Reactor_Notify_Test.cpp: Modified the test to check - whether our new mechanism for disabling the notify pipe works - correctly. - - * ace/{WFMO,Select}_Reactor[_Impl]: Added the - "disable_notify_pipe" flag in the constructor in order to - disable this feature and save on descriptors if they aren't - required. Thanks to Tom Venturella <tventurell@mdc.com> for - motivating this. - -Sat May 02 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * tests/Aio_Platform_Test.cpp: Included this test program for - testing a platform for Asynchronous I/O options. - * tests/Makefile (BIN): Added Aio_Platform_Test. - -Fri May 01 17:52:32 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Arg_Shifter.{h,cpp}: Added macros ACE_Export and - ACE_BUILD_DLL respectively. - - * ace/ACE_Library.mak: - * ace/ace_{dll,lib}.dsp: Added Arg_Shifter.cpp into project. - -Fri May 1 13:52:32 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * ace/Addr: Made the destructor for ACE_Addr virtual so that - subclasses can be deleted correctly. Thanks to Wei Chiang - <chiang@horizon.ntc.nokia.com> for reporting this. - - * ace: Added Arg_Shifter from TAO and renamed it to - ACE_Arg_Shifter. - - * ace/IOStream_T.i (recv_n): ACE_IOStream<STREAM>::eof (void) had - a subtle bug if it is called when a get operation (>>) has not - failed. Thanks to James CE Johnson <ace-users@lads.com> for - reporting this bug. - - * examples/Connection/misc/Connection_Handler.cpp: Make sure to - activate() each active object using THR_DETACHED so we don't run - out of threading resources. Thanks to Brad Walton - <brad.walton@transnexus.com> for reporting this. - - * ace/Timer_Queue_Adapters.cpp: Rather than returning the result - of schedule_ualarm(), the - ACE_Async_Timer_Queue_Adapter<TQ>::schedule() method should - return the timer id. Thanks to James Garrison - <jhg@austx.tandem.com> for reporting this. - - * examples/System_V_IPC/SV_Message_Queues: Renamed the so-called - "ACE_Message_Block" to "Message_Block" so it wouldn't be as - confusing. Thanks to Ganapathi <guns@fs.IConNet.NET> for this - suggestion. - -Fri May 01 17:52:32 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/ACE_Library.mak: - * ace/ace_{dll,lib}.dsp: Added Arg_Shifter.cpp into project. - -Fri May 01 14:09:21 1998 Steve Huston <shuston@riverace.com> - - * ace/OS.h: Changed ACE_hrtime_t from signed to unsigned on Win32 - to insure correct results from ACE_High_Res_Timer::elapsed_time - calculations. Fixes bug P87. - -Fri May 01 11:52:47 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.h: Forgot to redefine ASYS_INLINE after #undef it. - - * ace/OS.i (last_error): On Win32, this should also update errno - after calling SetLastError (). Thanks to Steve for pointing - this out. Fixes bug P88. - -Fri May 01 10:01:09 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-sunos5.6.h: replaced config-sunos5.6-sunc++-4.x.h - with this config file, which supports both Sun C++ and g++. - - * ace/OS.i (gethrtime): for the default (::gettimeofday) case, - use 64-bit instead of 32-bit arithmetic by casting to ACE_hrtime_t. - - * ace/Basic_Types.{h,i}: added ACE_U_LongLong::operator *. - - * ace/Env_Value_T.cpp: added #include of Env_Value_T.h. - -Fri May 1 00:35:40 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * include/makeinclude/wrapper_macros.GNU - (ACE_LDSO_Version_Number): Fixed the problem of not able to - parse a formal release number from ace/VERSION. - -Thu Apr 30 15:53:58 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ACE.{h,i,cpp}: - * DEV.{h,i,cpp}: - * DEV_Connector.{h,i,cpp}: - * DEV_IO.{h,i,cpp}: - * Date_Time.{h,i,cpp}: - * FIFO_Recv.{h,i,cpp}: - * FIFO_Recv_Msg.{h,i,cpp}: - * FIFO_Send.{h,i,cpp}: - * FIFO_Send_Msg.{h,i,cpp}: - * FILE.{h,i,cpp}: - * FILE_Connector.{h,i,cpp}: - * FILE_IO.{h,i,cpp}: - * IO_SAP.{h,i,cpp}: - * IPC_SAP.{h,i,cpp}: - * LSOCK.{h,i,cpp}: - * LSOCK_CODgram.{h,i,cpp}: - * LSOCK_Connector.{h,i,cpp}: - * LSOCK_Dgram.{h,i,cpp}: - * LSOCK_Stream.{h,i,cpp}: - * Log_Record.{h,i,cpp}: - * Pipe.{h,i,cpp}: - * SOCK.{h,i,cpp}: - * SOCK_CODgram.{h,i,cpp}: - * SOCK_Connector.{h,i,cpp}: - * SOCK_Dgram.{h,i,cpp}: - * SOCK_Dgram_Bcast.{h,i,cpp}: - * SOCK_Dgram_Mcast.{h,i,cpp}: - * SOCK_IO.{h,i,cpp}: - * SOCK_Stream.{h,i,cpp}: - * SPIPE.{h,i,cpp}: - * SPIPE_Connector.{h,i,cpp}: - * SPIPE_Stream.{h,i,cpp}: - * SV_Message_Queue.{h,i,cpp}: - * SV_Semaphore_Complex.{h,i,cpp}: - * SV_Semaphore_Simple.{h,i,cpp}: - * UPIPE_Acceptor.{h,i,cpp}: - * UPIPE_Connector.{h,i,cpp}: Added inline control for these - supposedly default inline functions. - - * ace/config-WinCE.h: Added ACE_LACKS_INLINE_FUNCTIONS. - - * ace/OS.h: Added a new macro ASYS_INLINE for platforms that don't - support inline properly. This is controlled by the macro - ACE_LACKS_INLINE_FUNCTIONS. - - Walked thru all macros and indented them properly. - - * ace/README: Added documentation for ACE_LACKS_INLINE_FUNCTIONS. |