Hi all,

 

I am pretty new to Groovy and after playing around for a little while I decided 
to use Groovy for my next little challenge … Basically I want to process a huge 
list of files (in parallel) using  GPARS.withPool. Each file needs to be  
parsed and converted into a XML file using MarkupBuilder. After the XML file is 
created I would like to reread it with the XmlParser and upload the original 
file and the corresponding XML file to a webservice using HTTPBuilder.

 

So basically I have a closure called fileworker that will process a file

 

def fileworker = {

  open file

  parse file, adjust some values and create XML file using MarkupBuilder

  parse the created XML file using XmlParser

  upload file and XML file using HTTPBuilder

}

 

and this closure will be used for processing the list in parallel 
(collectParallel)

 

groovyx.gpars.GParsPool.withPool(threads) {

                result = list.collectParallel fileworker

}

 

Due to my missing experiences I am a little concerned about thread safety when 
GPARS comes into place …. I have a working implemententation of all steps 
described above to run sequencially … but now when deploying GPARS, is there 
anything special that needs to be considered concerning the usage of 
MarkupBuilder, XmlParser, HTTPBuilder in that closure? I would appreciate if 
someone could share his experience and opinion …

 

Thanks in advance

Paolo

Reply via email to