is it any possibilities iphone app run on background, because my task is to retrieve wifi info and send it to the server about ssid & rssi, how this can be done,
If it's a possibility for you, jailbreaking the phone with either Pwnage Tool or blackra1n then installing Backgrounder via Cydia will allow you to run apps in the background. It's not difficult to jailbreak and backgrounding works very reliably.
You can't run your apps in the background. I'd suggest getting a second iPhone.
As I understand it, the app can run in the background if it provides other services e.g. background audio.
So perhaps your app could be a Wifi Scanning audio player, that way it should meet Apple's requirements for an app to stay active the background.
An approach like this is taken/being explored by the makers of PasteBot
It can be done on jailbroken iphones, with backgrounder app. http://code.google.com/p/iphone-backgrounder/
You might also be able to hack it by sending push notifications and checking for wifi when responding to the notifications ... kind of server-to-phone polling.
I doubt apple would approve an app that did either of these though.
Background execution is allowed for certain types of apps
For example set VOIP in background modes of app plist file. In this mode your app can run in the background and will be started automatically on system reboot
Be aware though if you are submitting via app store your app will need to contain some sort of VIOP functionality or it will be rejected.
One of the limits imposed upon you with iPhone applications is that your application must run in the foreground. When the application is closed it will exit.
The only way around this is to provide a service on your website or something, effectively moving the application from the phone to another location while it is closed, and pushing notifications to the phone in the form of badges. This is very severe limitation for most applications, but it works quite well for others =)