add epicsThreadSleep between channel destroy and recreate

This commit is contained in:
Marty Kraimer
2013-11-21 06:24:28 -05:00
parent ce116eefb8
commit ac971042de
4 changed files with 1946 additions and 7 deletions

View File

@@ -255,6 +255,7 @@ void LongArrayChannelGet::run()
if(iterBetweenCreateChannel!=0) {
if(numChannelCreate>=iterBetweenCreateChannel) {
channel->destroy();
epicsThreadSleep(1.0);
ChannelProvider::shared_pointer channelProvider =
getChannelAccess()->getProvider(providerName);
channel = channelProvider->createChannel(

View File

@@ -260,9 +260,11 @@ void LongArrayChannelPut::run()
if(iterBetweenCreateChannel!=0) {
if(numChannelCreate>=iterBetweenCreateChannel) {
channel->destroy();
epicsThreadSleep(1.0);
ChannelProvider::shared_pointer channelProvider =
getChannelAccess()->getProvider(providerName);
channel = channelProvider->createChannel(channelName,getPtrSelf(),0);
channel = channelProvider->createChannel(
channelName,getPtrSelf(),0);
event.wait();
if(isDestroyed) {
runReturned = true;