mirror of
https://github.com/Ernous/TorrServerJellyfin.git
synced 2025-12-19 13:36:09 +05:00
change limit priority logic
This commit is contained in:
@@ -247,13 +247,21 @@ func (c *Cache) getRemPieces() []*Piece {
|
|||||||
}
|
}
|
||||||
pc := r.getReaderPiece()
|
pc := r.getReaderPiece()
|
||||||
end := r.getPiecesRange().End
|
end := r.getPiecesRange().End
|
||||||
limit := 5
|
limit := 16777216 / c.pieceLength * 5
|
||||||
|
if limit > 40 {
|
||||||
|
limit = 40
|
||||||
|
}
|
||||||
|
count := limit
|
||||||
|
|
||||||
for pc <= end && limit > 0 {
|
for pc <= end && limit > 0 {
|
||||||
if !c.pieces[pc].Complete {
|
if !c.pieces[pc].Complete {
|
||||||
if c.torrent.PieceState(pc).Priority == torrent.PiecePriorityNone {
|
if c.torrent.PieceState(pc).Priority == torrent.PiecePriorityNone {
|
||||||
|
if limit > count/2 {
|
||||||
|
c.torrent.Piece(pc).SetPriority(torrent.PiecePriorityHigh)
|
||||||
|
} else {
|
||||||
c.torrent.Piece(pc).SetPriority(torrent.PiecePriorityNormal)
|
c.torrent.Piece(pc).SetPriority(torrent.PiecePriorityNormal)
|
||||||
}
|
}
|
||||||
|
}
|
||||||
limit--
|
limit--
|
||||||
}
|
}
|
||||||
pc++
|
pc++
|
||||||
|
|||||||
Reference in New Issue
Block a user