You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@xerces.apache.org by ji...@apache.org on 2004/06/17 17:37:10 UTC

[jira] Commented: (XERCESC-1230) Avoid unnecessary sync points in MemoryManagerImpl

The following comment has been added to this issue:

     Author: David Bertoni
    Created: Thu, 17 Jun 2004 8:35 AM
       Body:
This is a problems in the Microsoft C run-time library as well.  You would think compiler/run-time library authors would understand why this is a problem, and not do something so ridiculous.  Have you considered reporting this to Sun?
---------------------------------------------------------------------
View this comment:
  http://issues.apache.org/jira/browse/XERCESC-1230?page=comments#action_36212

---------------------------------------------------------------------
View the issue:
  http://issues.apache.org/jira/browse/XERCESC-1230

Here is an overview of the issue:
---------------------------------------------------------------------
        Key: XERCESC-1230
    Summary: Avoid unnecessary sync points in MemoryManagerImpl
       Type: Improvement

     Status: Unassigned
   Priority: Minor

    Project: Xerces-C++
 Components: 
             Miscellaneous
   Versions:
             2.3.0

   Assignee: 
   Reporter: Michael Kopp

    Created: Thu, 17 Jun 2004 6:19 AM
    Updated: Thu, 17 Jun 2004 8:35 AM
Environment: Sun Solaris 5.8

Description:
I found that a delete(NULL) call is a sync point although it really doesn't do anything. That is especially anoying in the transcode functions that call deallocate on 'allocatedArray' even if it is null.

The fix is very simple, just change the MemoryManagerImpl::deallocate:

void MemoryManagerImpl::deallocate(void* p)
{
  if (p != NULL)
    ::operator delete(p);
}

Believe it or not but this improved my scalability a lot as this was one of the very few places that still did a delete call in my code.


---------------------------------------------------------------------
JIRA INFORMATION:
This message is automatically generated by JIRA.

If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa

If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-c-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-c-dev-help@xml.apache.org