Mem- leak with object factory (ORBit2)
- From: Mr C.A.Beazley <cbeazley hgmp mrc ac uk>
- To: <orbit-list gnome org>
- Subject: Mem- leak with object factory (ORBit2)
- Date: Mon, 24 Jun 2002 13:50:15 +0100
I'm having problems with the factory object (Session_Manager).
I'm experiencing a slow leak in the server which occurs with repeated
login/logout calls (It takes about a 100 login/logouts to show a noticable
mem leak).
I'm using ORBit2 (2.3.106 - serial 19) on solaris.
The create/destroy/init and fini are as produced by orbit-idl-2.
What am I doing wrong?
-----------------------------------------------------
idl-file:-
module TEST{
interface Applications{
void logout();
};
interface Session_Manager{
Applications login();
};
};
-----------------------------------------------------
main server file:-
/*** epv structures ***/
static PortableServer_ServantBase__epv impl_EMBOSS_Applications_base_epv = {
NULL, /* _private data */
NULL, /* finalize routine */
NULL, /* default_POA routine */
};
static POA_EMBOSS_Applications__epv impl_EMBOSS_Applications_epv = {
NULL, /* _private */
(gpointer) & impl_EMBOSS_Applications_logout,
};
static PortableServer_ServantBase__epv impl_EMBOSS_Session_Manager_base_epv =
{
NULL, /* _private data */
NULL, /* finalize routine */
NULL, /* default_POA routine */
};
static POA_EMBOSS_Session_Manager__epv impl_EMBOSS_Session_Manager_epv = {
NULL, /* _private */
(gpointer) & impl_EMBOSS_Session_Manager_login,
};
/*** vepv structures ***/
static POA_EMBOSS_Applications__vepv impl_EMBOSS_Applications_vepv = {
&impl_EMBOSS_Applications_base_epv,
&impl_EMBOSS_Applications_epv,
};
static POA_EMBOSS_Session_Manager__vepv impl_EMBOSS_Session_Manager_vepv = {
&impl_EMBOSS_Session_Manager_base_epv,
&impl_EMBOSS_Session_Manager_epv,
};
main (int argc, char *argv[]){
Correctly fires up the session manager;
}
TEST_Applications
impl_TEST_Session_Manager_login(impl_POA_TEST_Session_Manager *servant,
CORBA_Environment * ev)
{
TEST_Applications retval;
retval=TEST_Applications__create(servant->poa,ev);
return retval;
}
void
impl_TEST_Applications_logout(impl_POA_TEST_Applications * servant,
CORBA_Environment * ev)
{
TEST_Applications__destroy(servant,ev);
return;
}
--------------------------------------------------------
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]