mirror of
https://github.com/juce-framework/JUCE.git
synced 2026-02-05 03:50:07 +00:00
Added JUCE_DECLARE_WEAK_REFERENCEABLE macro to make it easier to creat weak-referenceable classes
This commit is contained in:
parent
b44cb8b710
commit
1aaa598a5f
13 changed files with 50 additions and 62 deletions
|
|
@ -26,22 +26,16 @@ namespace juce
|
|||
struct InterprocessConnection::ConnectionThread : public Thread
|
||||
{
|
||||
ConnectionThread (InterprocessConnection& c) : Thread ("JUCE IPC"), owner (c) {}
|
||||
|
||||
void run() override { owner.runThread(); }
|
||||
|
||||
private:
|
||||
InterprocessConnection& owner;
|
||||
|
||||
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (ConnectionThread)
|
||||
};
|
||||
|
||||
//==============================================================================
|
||||
InterprocessConnection::InterprocessConnection (const bool callbacksOnMessageThread,
|
||||
const uint32 magicMessageHeaderNumber)
|
||||
: callbackConnectionState (false),
|
||||
useMessageThread (callbacksOnMessageThread),
|
||||
magicMessageHeader (magicMessageHeaderNumber),
|
||||
pipeReceiveMessageTimeout (-1)
|
||||
InterprocessConnection::InterprocessConnection (bool callbacksOnMessageThread, uint32 magicMessageHeaderNumber)
|
||||
: useMessageThread (callbacksOnMessageThread),
|
||||
magicMessageHeader (magicMessageHeaderNumber)
|
||||
{
|
||||
thread = new ConnectionThread (*this);
|
||||
}
|
||||
|
|
@ -207,7 +201,7 @@ struct ConnectionStateMessage : public MessageManager::MessageBase
|
|||
|
||||
void messageCallback() override
|
||||
{
|
||||
if (InterprocessConnection* const ipc = owner)
|
||||
if (auto* ipc = owner.get())
|
||||
{
|
||||
if (connectionMade)
|
||||
ipc->connectionMade();
|
||||
|
|
@ -256,7 +250,7 @@ struct DataDeliveryMessage : public Message
|
|||
|
||||
void messageCallback() override
|
||||
{
|
||||
if (InterprocessConnection* const ipc = owner)
|
||||
if (auto* ipc = owner.get())
|
||||
ipc->messageReceived (data);
|
||||
}
|
||||
|
||||
|
|
@ -331,7 +325,7 @@ void InterprocessConnection::runThread()
|
|||
{
|
||||
if (socket != nullptr)
|
||||
{
|
||||
const int ready = socket->waitUntilReady (true, 0);
|
||||
auto ready = socket->waitUntilReady (true, 0);
|
||||
|
||||
if (ready < 0)
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue