git-svn-id: svn://db.shs.com.ru/pip@233 12ceb7fc-bf1f-11e4-8940-5bc7170c53b5
This commit is contained in:
@@ -857,13 +857,12 @@ PIString PIPeer::constructFullPath() const {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
int PIPeer::read(void *read_to, int max_size) {
|
int PIPeer::read(void * read_to, int max_size) {
|
||||||
bool empty = read_buffer.isEmpty();
|
while (read_buffer.isEmpty()) piMSleep(10);
|
||||||
while (empty) piMSleep(10);
|
|
||||||
PIMutexLocker ml(read_buffer_mutex);
|
PIMutexLocker ml(read_buffer_mutex);
|
||||||
if (!read_buffer.isEmpty()) {
|
if (!read_buffer.isEmpty()) {
|
||||||
PIByteArray ba = read_buffer.dequeue();
|
PIByteArray ba = read_buffer.dequeue();
|
||||||
int sz = piMini(ba.size_s(), max_size);
|
int sz = piMini(ba.size_s(), max_size);
|
||||||
memcpy(read_to, ba.data(), sz);
|
memcpy(read_to, ba.data(), sz);
|
||||||
return sz;
|
return sz;
|
||||||
}
|
}
|
||||||
@@ -871,7 +870,7 @@ int PIPeer::read(void *read_to, int max_size) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
int PIPeer::write(const void *data, int size) {
|
int PIPeer::write(const void * data, int size) {
|
||||||
if (trust_peer.isEmpty()) {
|
if (trust_peer.isEmpty()) {
|
||||||
sendToAll(data, size);
|
sendToAll(data, size);
|
||||||
return size;
|
return size;
|
||||||
|
|||||||
@@ -136,7 +136,7 @@ public:
|
|||||||
const PIString & trustPeerName() const {return trust_peer;}
|
const PIString & trustPeerName() const {return trust_peer;}
|
||||||
void setTrustPeerName(const PIString & peer_name) {trust_peer = peer_name;}
|
void setTrustPeerName(const PIString & peer_name) {trust_peer = peer_name;}
|
||||||
PIString constructFullPath() const;
|
PIString constructFullPath() const;
|
||||||
int read(void *read_to, int max_size);
|
int read(void * read_to, int max_size);
|
||||||
int write(const void * data, int size);
|
int write(const void * data, int size);
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user