ObjFW  Diff

Differences From Artifact [d42000199a]:

To Artifact [3b393cf990]:


593
594
595
596
597
598
599
600
601
602
603
604







605
606
607
608
609
610
611
		OF_ENSURE(0);
}

- (void)run
{
	_running = true;

	while (_running) {
		void *pool = objc_autoreleasePoolPush();
		OFDate *now = [OFDate date];
		OFTimer *timer;
		OFDate *nextTimer;








#ifdef OF_HAVE_THREADS
		[_timersQueueLock lock];
		@try {
#endif
			of_list_object_t *listObject =
			    [_timersQueue firstListObject];







|
|
|


>
>
>
>
>
>
>







593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
		OF_ENSURE(0);
}

- (void)run
{
	_running = true;

	for (;;) {
		void *pool;
		OFDate *now;
		OFTimer *timer;
		OFDate *nextTimer;

		of_memory_read_barrier();
		if (!_running)
			break;

		pool = objc_autoreleasePoolPush();
		now = [OFDate date];

#ifdef OF_HAVE_THREADS
		[_timersQueueLock lock];
		@try {
#endif
			of_list_object_t *listObject =
			    [_timersQueue firstListObject];
659
660
661
662
663
664
665

666
667
668
		objc_autoreleasePoolPop(pool);
	}
}

- (void)stop
{
	_running = false;

	[_streamObserver cancel];
}
@end







>



666
667
668
669
670
671
672
673
674
675
676
		objc_autoreleasePoolPop(pool);
	}
}

- (void)stop
{
	_running = false;
	of_memory_write_barrier();
	[_streamObserver cancel];
}
@end