Changeset 160
- Timestamp:
- 04/13/08 03:29:09 (7 months ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
branches/oo_indexer/lib/picolena/templates/app/models/indexer.rb
r159 r160 39 39 40 40 def index_directory_with_multithreads(dir) 41 log :debug => "Indexing #{dir}, #{MaxThreadsNumber} multithreads"41 log :debug => "Indexing #{dir}, #{MaxThreadsNumber} threads" 42 42 43 @indexing_list=Dir[File.join(dir,"**/*")].select{|filename|43 indexing_list=Dir[File.join(dir,"**/*")].select{|filename| 44 44 File.file?(filename) && filename !~ Exclude 45 45 } 46 46 47 MaxThreadsNumber.threads{launch_indexing_chain(@indexing_list)} 47 # Cutting indexing_list in slices to avoid treating too big a list. 48 # Migth raise a "stack level too deep" otherwise. 49 indexing_list.each_slice(100*MaxThreadsNumber){|indexing_list_chunk| 50 log :debug => "NEW CHUNK!!!!!!!!!!" 51 @indexing_list_chunk=indexing_list_chunk 52 MaxThreadsNumber.threads{launch_indexing_chain(@indexing_list_chunk)} 53 } 48 54 end 49 55
