Re: NSCalendarDate to be deprecated
Re: NSCalendarDate to be deprecated
- Subject: Re: NSCalendarDate to be deprecated
- From: Tom Bernard <email@hidden>
- Date: Tue, 19 Aug 2008 01:51:04 -0600
- Thread-topic: NSCalendarDate to be deprecated
As written, 70 microseconds. When I set the calendar's time zone to GMT, the
time drops to 43 microseconds. Since my app will only work with dates in
GMT, this is a plus. Even so, 40 microseconds is far slower than the 7 - 8
microseconds offered by -[NSCalendarDate dayOfYear]. Unless someone has
another offering, I plan to file a bug report on this issue. This
calculation is part of an animation loop, so the performance hit is
important.
Btw, my two offerings return an incorrect 367 for the date 2008-12-31
23:59:59 +0000; 2008 being a leap year, the correct return is 366. Your
offering and NSCalendarDate get it right.
int dayOfYearForDate4(NSDate *_date)
{
NSTimeZone *gmtTimeZone = [NSTimeZone timeZoneForSecondsFromGMT:0];
NSCalendar *calendar = [[NSCalendar alloc]
initWithCalendarIdentifier:NSGregorianCalendar];
[calendar setTimeZone:gmtTimeZone];
int day = [calendar ordinalityOfUnit:NSDayCalendarUnit
inUnit:NSYearCalendarUnit forDate:_date];
return day;
}
on 8/18/08 7:34 AM, Eliza Block at email@hidden wrote:
> You could do this:
>
> int dayOfYearForDate(NSDate *_date)
> {
> NSCalendar *calendar = [[NSCalendar alloc]
> initWithCalendarIndentifier:NSGregorianCalendar]];
> int day = [calendar ordinalityOfUnit:NSDayCalendarUnit
> inUnit:NSYearCalendarUnit forDate:_date];
> return day;
> }
>
> I've never benchmarked this, but it's certainly a lot less code.
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden