1

If I understand well, an EdgeIterator can be used only one time. If this is correct, why can't we simply reset it to avoid creating a new instance of EdgeIterator each time we need to loop over the same node edges ?

Thanks !

user3890394
  • 99
  • 1
  • 7

1 Answers1

0

The EdgeIterator is reused if you use the EdgeExplorer:

// store somewhere
explorer = graph.createEdgeExplorer();

// use somewhere
EdgeIterator iter = explorer.setBaseNode(x);
while(iter) {..}

Still be very careful with this as you need one edgeExplorer for every thread and every loop e.g. having a double for-loop with one explorer will fail :)

Karussell
  • 17,085
  • 16
  • 97
  • 197
  • Ok so if I need to browse neighbors inside a loop that already browse neighbors I need 2 EdgeExplorer ... Thanks :) – user3890394 Jun 22 '15 at 14:07