Create a view-based application,
Viewcontroller. hCodeAs follows:
# Import <uikit/uikit. h>
@ Interface tconditionviewcontroller: uiviewcontroller {
Int tickets;
Nsthread * T1;
Nsthread * t2;
Nscondition * TC;
}
-(Void) dosomething :( ID) tname;
@ End
The viewcontroller. m code is as follows:
# Import "tconditionviewcontroller. H"
@ Implementation tconditionviewcontroller
-(Void) dosomething :( ID) tname
{
Nsstring * name = (nsstring *) tname;
While (true ){
Nslog (@ "in thread % @", name );
[Nsthread sleepfortimeinterval: 1];
[TC lock];
Nslog (@ "KKKK ");
[TC unlock];
}
}
-(Void) dealloc
{
[Super dealloc];
}
-(Void) didreceivememorywarning
{
// Releases the view if it doesn't have a superview.
[Super didreceivememorywarning];
// Release any cached data, images, etc that aren't in use.
}
# Pragma mark-view Lifecycle
// Implement viewdidload to do additional setup after loading the view, typically from a nib.
-(Void) viewdidload
{
TC = [[nscondition alloc] init];
T1 = [[nsthread alloc] initwithtarget: Self selector: @ selector (dosomething :) object: @ "1"];
[T1 start];
T2 = [[nsthread alloc] initwithtarget: Self selector: @ selector (dosomething :) object: @ "2"];
[T2 start];
[Super viewdidload];
}
-(Void) viewdidunload
{
[Super viewdidunload];
// Release any retained subviews of the main view.
// E.g. Self. myoutlet = nil;
}
-(Bool) shouldautorotatetointerfaceorientation :( uiinterfaceorientation) interfaceorientation
{
// Return YES For supported orientations
Return (interfaceorientation = uiinterfaceorientationportrait );
}
@ End