The problem with your solution is that my application is mutli-threaded.
By the way, is XMLFormatter is thread safe?
If not, then I should protect the XMLFormatter and my XMLFormatTarget
using a critical section in any case.
That is,

In h file:
class...
{
   CMyXmlFormatTarget m_formatTarget;
}

In constructor:

m_formatter(IP_MC_DEFAULT_ENCODING_STR,
                &m_formatTarget,
                XMLFormatter::StdEscapes,
                XMLFormatter::UnRep_Fail);

In format function:

EnterCriticalSection()
m_formatTarget.reset()
m_formatter.formatBuf(U_ParamValue, U_ParamValueLen);
LeaveCriticalSection()


Does it look good to you?




-----Original Message-----
From: Alberto Massari [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, October 04, 2006 1:46 PM
To: [email protected]
Subject: RE: XMLFormatter performance

Hi Ori,
if you are concerned about performance, you can directly reuse your 
CMyXmlFormatTarget and associated XMLFormatter; just add to your 
CMyXMLFormatTarget a reset() method to clean up its state before (or 
after) invoking formatBuf...

Alberto

At 12.21 04/10/2006 +0200, Ori Doolman wrote:
>hi,
>Anyone?
>
>
>-----Original Message-----
>From: Ori Doolman
>Sent: Tuesday, October 03, 2006 2:08 PM
>To: [email protected]
>Subject: XMLFormatter performance
>
>Hello,
>
>I wanted to know if the following code can affect my application
>performance.
>
>
>
>                                     CMyXmlFormatTarget formatTarget();
>
>                                     XMLFormatter
>formatter(IP_MC_DEFAULT_ENCODING_STR,
>
>
>&formatTarget,
>
>
>XMLFormatter::StdEscapes,
>
>
>XMLFormatter::UnRep_Fail);
>
>                                     formatter.formatBuf(U_ParamValue,
>U_ParamValueLen);
>
>
>
>
>
>
>
>My fear is that creating a new transcoder per call may take relatively
a
>long time.
>
>The problem is that XMLFormatter do not accept a pre-created transcoder
>(but always allocate a new one internally) and cannot set its
>XMLFormatTarget.
>
>Therefore, the above code is called a lot of times in my application:
>
>
>
>Regards,
>
>Ori Doolman,
>
>Sigvalue Technologies.
>
>Tel:   972-9-7615119
>
>Fax:  972-9-7602373
>
>


Reply via email to