Women in Technology

Hear us Roar



Article:
  Knowing When to Let Go: Better Living Through Memory Management
Subject:   is simpler slower?
Date:   2003-06-13 14:27:00
From:   anonymous2
Response to: is simpler slower?

one thing to worry about when using the accessor method you suggested in your post is the situation where the same object passed to the method was already the one set! calling retain on aFriend could then potentially result in a call to a nonexistent object.


Full Threads Oldest First

Showing messages 1 through 3 of 3.

  • is simpler slower?
    2003-06-13 20:52:04  iapole [View]

    There, I knew there was a good reason not to use it! Thanks, I just couldn't remember it for the life of me.
    • is simpler slower?
      2003-06-15 21:29:50  anonymous2 [View]

      Perhaps this would be faster?

      -setFriend:(id)aFriend
      {
      if (aFriend != friend)
      {
      [friend release];
      friend = [aFriend retain];
      }
      }

      I suppose it depends on the efficency of the comparison operation.
      • is simpler slower?
        2003-06-16 16:11:16  iapole [View]

        I believe the PPC's branch prediction is good enough to make that fast, but faster still will probably be:

        -(void)setFriend:(id)aFriend
        {
        [aFriend retain];
        [friend release];
        friend = aFriend;
        }

        Which avoids the releasing problem. But keep in mind that this is all subjective, I have done absolutely no tests of efficiency regarding these.