segmenter_worker.go】的更多相关文章

package; ; i < engine.initOptions.NumShards; i++ {                 if i == shard {                     continue                 }                 engine.indexerAddDocChannels[i] <- indexerAddDocumentRequest{forceUpdate: true}             }         }…
searcher.IndexDocument(0, types.DocumentIndexData{Content: "此次百度收购将成中国互联网最大并购"}) engine.go中的源码实现: // 将文档加入索引 // // 输入参数: // docId 标识文档编号,必须唯一 // data 见DocumentIndexData注释 // // 注意: // 1. 这个函数是线程安全的,请尽可能并发调用以提高索引速度 // 2. 这个函数调用是非同步的,也就是说在函数返回时有可能…
之前的文章分析过,接受索引请求处理的代码在segmenter_worker.go里: func (engine *Engine) segmenterWorker() { for { request := <-engine.segmenterChannel //关键 tokensMap := make(map[string][]int) numTokens := 0 if !engine.initOptions.NotUsingSegmenter && request.data.Con…