Skip to content

Commit e7c9316

Browse files
committed
Added option to specify the port the local interperter is using.
All threads should be daemons now.
1 parent 58beae7 commit e7c9316

5 files changed

Lines changed: 33 additions & 7 deletions

File tree

floppy/floppySettings.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ def __init__(self, *args, settings=None, globals=None):
77
self.settings= settings
88
self.dialogs = [('Network Settings', None),
99
('Default Connection', DefaultConnectionEdit(settings, globals, self)),
10+
('Local Interpreter Port', LocalInterpreterPortEdit(settings, globals, self)),
1011
('Node Graph Render Settings', None),
1112
('Node Font Size', FontSizeEdit(settings, globals, self)),
1213
('Node Font Offset', FontOffsetEdit(settings, globals, self)),
@@ -249,3 +250,19 @@ def commit(self):
249250
def openDialog(self):
250251
dirName = QFileDialog.getExistingDirectory(self, 'Temporary file storage', self.value)
251252
self.value = dirName
253+
254+
255+
class LocalInterpreterPortEdit(QSpinBox):
256+
def __init__(self, settings, globals, parent):
257+
self.parent = parent
258+
self.globals = globals
259+
self.settings = settings
260+
super(LocalInterpreterPortEdit, self).__init__()
261+
v = settings.value('LocalPort', type=int)
262+
v = v if v else 8080
263+
self.setRange(1, 99999)
264+
self.setValue(v)
265+
266+
def commit(self):
267+
self.settings.setValue('LocalPort', self.value())
268+
self.globals['LOCALPORT'] = self.value()

floppy/graph.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,17 +48,17 @@ def __init__(self, painter=None):
4848
else:
4949
self.painter = dummy
5050

51-
def spawnAndConnect(self):
51+
def spawnAndConnect(self, port=8079):
5252
"""
5353
Spawns a new graph interpreter instance and establishes a TCP/IP connection to it.
5454
:return:
5555
"""
5656
if not self.runner:
5757
self.runner = Runner()
58-
self.connect2RemoteRunner(host='127.0.0.1', port=7234)
58+
self.connect2RemoteRunner(host='127.0.0.1', port=port)
5959
self.slave = True
6060

61-
def connect2RemoteRunner(self, host='127.0.0.1', port=7234):
61+
def connect2RemoteRunner(self, host='127.0.0.1', port=8079):
6262
self.cmdHost = host
6363
self.cmdPort = int(port)
6464
self.slave = False
@@ -661,8 +661,10 @@ def __init__(self, node, cb, arg):
661661
# node.lock()
662662
self.node = node
663663
self.cb = cb
664+
664665
self.arg = arg
665666
super(NodeThread, self).__init__()
667+
self.daemon = True
666668
self.start()
667669

668670
def run(self):

floppy/node.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@ def isAvailable(self):
142142
if self.pure == 1:
143143
self.pure = 2
144144
# self.usedDefault = True
145-
print('+++++++++++++++++', self.name, self.value, self.valueSet, self.owner, self.usedDefault)
145+
# print('+++++++++++++++++', self.name, self.value, self.valueSet, self.owner, self.usedDefault)
146146
return True
147147
return False
148148

floppy/painter.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import platform
1313

1414

15+
LOCALPORT = 8080
1516
PINSIZE = 8
1617
NODETITLEFONTSIZE = 12
1718
CONNECTIONLINEWIDTH = 2
@@ -881,7 +882,10 @@ def close(self):
881882
workDir = self.settings.value('WorkDir', type=str)
882883
for file in os.listdir(workDir):
883884
if file.startswith('_'):
884-
os.remove(workDir+'/'+file)
885+
try:
886+
os.remove(workDir+'/'+file)
887+
except:
888+
pass
885889
qApp.quit()
886890

887891
def updateStatus(self):
@@ -924,7 +928,7 @@ def unpauseRunner(self):
924928
def spawnRunner(self):
925929
print('Spawning new Runner.')
926930
self.statusBar.showMessage('New Remote Interpreter spawned.', 2000)
927-
self.drawer.graph.spawnAndConnect()
931+
self.drawer.graph.spawnAndConnect(LOCALPORT)
928932

929933
def runCode(self, *args):
930934
self.drawer.graph.execute()

floppy/runner.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,8 @@
1616
# host = '127.0.0.1'
1717
# host = '10.76.64.86'
1818
host = ''
19-
port = 7234
19+
port = 8079
20+
2021

2122
# updatePort = 7237
2223

@@ -148,11 +149,13 @@ def getReport(self, nodeID):
148149
class ExecutionThread(Thread):
149150
def __init__(self, cmdQueue, master):
150151
self.graph = None
152+
151153
self.master = master
152154
self.paused = True
153155
self.alive = True
154156
self.cmdQueue = cmdQueue
155157
super(ExecutionThread, self).__init__()
158+
self.daemon = True
156159
# self.updateGraph()
157160
self.start()
158161

0 commit comments

Comments
 (0)