[self performSelectorInBackground:@selector(callXml:)
withObject:@"test"];
ie: what you pass in as withObject: becomes the parameter to your method.
Just as a point of interest here's how you could do it using GCD:
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
[self callXml:@"test"];
// If you then need to execute something making sure it's on the main thread (updating the UI for example)
dispatch_async(dispatch_get_main_queue(), ^{
[self updateGUI];
});
});