vertex arrivals lock
This commit is contained in:
parent
d50069d67e
commit
f4d833f1b5
|
|
@ -515,9 +515,14 @@ Graph::makeArrivals(Vertex *vertex,
|
|||
}
|
||||
|
||||
Arrival *
|
||||
Graph::arrivals(Vertex *vertex) const
|
||||
Graph::arrivals(Vertex *vertex)
|
||||
{
|
||||
return arrivals_.pointer(vertex->arrivals());
|
||||
Arrival *arrivals;
|
||||
{
|
||||
UniqueLock lock(arrivals_lock_);
|
||||
arrivals = arrivals_.pointer(vertex->arrivals());
|
||||
}
|
||||
return arrivals;
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
|||
|
|
@ -100,7 +100,7 @@ public:
|
|||
VertexId vertexCount() { return vertices_->size(); }
|
||||
Arrival *makeArrivals(Vertex *vertex,
|
||||
uint32_t count);
|
||||
Arrival *arrivals(Vertex *vertex) const;
|
||||
Arrival *arrivals(Vertex *vertex);
|
||||
void clearArrivals();
|
||||
PathVertexRep *makePrevPaths(Vertex *vertex,
|
||||
uint32_t count);
|
||||
|
|
@ -274,7 +274,7 @@ public:
|
|||
bool isRoot() const{ return level_ == 0; }
|
||||
LevelColor color() const { return static_cast<LevelColor>(color_); }
|
||||
void setColor(LevelColor color);
|
||||
ArrivalId arrivals() const { return arrivals_; }
|
||||
ArrivalId arrivals() { return arrivals_; }
|
||||
void setArrivals(ArrivalId id);
|
||||
PrevPathId prevPaths() const { return prev_paths_; }
|
||||
void setPrevPaths(PrevPathId id);
|
||||
|
|
|
|||
|
|
@ -132,7 +132,7 @@ PathVertexRep::tag(const StaState *sta) const
|
|||
Arrival
|
||||
PathVertexRep::arrival(const StaState *sta) const
|
||||
{
|
||||
const Graph *graph = sta->graph();
|
||||
Graph *graph = sta->graph();
|
||||
const Search *search = sta->search();
|
||||
Tag *tag = search->tag(tag_index_);
|
||||
Vertex *vertex = graph->vertex(vertex_id_);
|
||||
|
|
|
|||
Loading…
Reference in New Issue