org.apache.giraph.graph.Vertex.getMutableEdges()方法的使用及代码示例

x33g5p2x  于2022-02-01 转载在 其他  
字(1.5k)|赞(0)|评价(0)|浏览(142)

本文整理了Java中org.apache.giraph.graph.Vertex.getMutableEdges()方法的一些代码示例,展示了Vertex.getMutableEdges()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Vertex.getMutableEdges()方法的具体详情如下:
包路径:org.apache.giraph.graph.Vertex
类名称:Vertex
方法名:getMutableEdges

Vertex.getMutableEdges介绍

[英]Get an iterable of out-edges that can be modified in-place. This can mean changing the current edge value or removing the current edge (by using the iterator version). Note: accessing the edges with other methods (e.g., addEdge()) during iteration leads to undefined behavior.
[中]获取一个可在适当位置修改的可编辑的输出边。这可能意味着更改当前边值或删除当前边(通过使用迭代器版本)。注意:在迭代过程中,使用其他方法(例如addEdge())访问边会导致未定义的行为。

代码示例

代码示例来源:origin: grafos-ml/okapi

  1. @Override
  2. public void compute(
  3. Vertex<LongWritable, NullWritable, NullWritable> vertex,
  4. Iterable<LongWritable> messages) throws IOException {
  5. HashSet<LongWritable> toDelete = new HashSet<LongWritable>();
  6. for (LongWritable id : messages) {
  7. toDelete.add(new LongWritable(id.get()));
  8. }
  9. Iterator<MutableEdge<LongWritable,NullWritable>> edgeIterator =
  10. vertex.getMutableEdges().iterator();
  11. while (edgeIterator.hasNext()) {
  12. if (toDelete.contains(edgeIterator.next().getTargetVertexId())) {
  13. edgeIterator.remove();
  14. }
  15. }
  16. if (vertex.getNumEdges()<getConf().getInt(K_VALUE, K_VALUE_DEFAULT)) {
  17. sendMessageToAllEdges(vertex, vertex.getId());
  18. removeVertexRequest(vertex.getId());
  19. }
  20. vertex.voteToHalt();
  21. }
  22. }

代码示例来源:origin: org.apache.giraph/giraph-core

  1. vertex.getMutableEdges()) {
  2. edge.setValue(new DoubleWritable(edge.getValue().get() / outEdgeSum));

相关文章