I have 4 UITableView's on my iPAD application. I load the data on them using a function loadData ,which is there in all the 4 TableViewController.m files, which makes calls to the database. So, I would be doing something like this Code: [aView loadData]; [bView loadData]; [cView loadData]; [dView loadData]; Where aView, bView, cView and dView are the view controllers of the UITableView's. However, the database calls happen synchronously and hence only after the data is retrieved from the [aView loadData] function, does the [bView loadData] function get called and so on. This affects my performance. I would like to know if there is a way I can asynchronously make calls to the database/ asynchronously make calls to functions which calls database. It would be great if someone could help me out with this.