Questions about the LÖVE API, installing LÖVE and other support related questions go here.
Forum rules
Before you make a thread asking for help,
read this.
-
Astusvis
- Prole
- Posts: 33
- Joined: Fri Aug 05, 2011 5:22 pm
Post
by Astusvis »
Robin wrote:Can't you put the bulk of the code in a big loop instead?
me == stupid
EDIT: Why won't this code start the thread? The thread code itself has no problems in it.
Code: Select all
for i=1, threads do
thread[i] = {thread = love.thread.newThread("genimage" .. i, "genimage.lua"), image = nil, depth = nil}
thread[i].thread:start()
print("Created/started thread no. " .. i)
end
-
TechnoCat
- Inner party member
- Posts: 1611
- Joined: Thu Jul 30, 2009 12:31 am
- Location: Milwaukee, WI
-
Contact:
Post
by TechnoCat »
Astusvis wrote:EDIT: Why won't this code start the thread? The thread code itself has no problems in it.
Seems to me that is exactly the problem. Sounds like your thread code crashes.
-
bartbes
- Sex machine
- Posts: 4946
- Joined: Fri Aug 29, 2008 10:35 am
- Location: The Netherlands
-
Contact:
Post
by bartbes »
It seems you are still working with love.image at the same time in multiple threads, which won't work in 0.7.2.
Also, killing, regardless of the lua code has finished, can have very bad effects, I've had love crash because of it, or worse, in a deadlock.
-
Astusvis
- Prole
- Posts: 33
- Joined: Fri Aug 05, 2011 5:22 pm
Post
by Astusvis »
Oh, I forgot that I'd removed the any image references and used TSerial along with a table to just gather pixel data.
I've also put it into a loop.
The thing is the code isn't even being run; I put a print("Thread loaded") at the top and the console was blank.
-
Boolsheet
- Inner party member
- Posts: 780
- Joined: Wed Dec 29, 2010 4:57 am
- Location: Switzerland
Post
by Boolsheet »
LÖVE pushes the Lua error to "error" if something in the script went wrong.
Get it with thread:receive("error").
Shallow indentations.
-
TechnoCat
- Inner party member
- Posts: 1611
- Joined: Thu Jul 30, 2009 12:31 am
- Location: Milwaukee, WI
-
Contact:
Post
by TechnoCat »
Boolsheet wrote:LÖVE pushes the Lua error to "error" if something in the script went wrong.
Get it with thread:receive("error").
Inserting into the wiki. Not really sure
where!
-
Astusvis
- Prole
- Posts: 33
- Joined: Fri Aug 05, 2011 5:22 pm
Post
by Astusvis »
Woah, that helped alot.
Do threads happen to be copied over to a different folder before being run, by any chance? Because that MUST be happening.
Basically, the thread of genimage.lua can't find TSerial.lua, although main.lua can...
Also, I'd put another reference to the error retrieving in Thread:reveive()
-
bartbes
- Sex machine
- Posts: 4946
- Joined: Fri Aug 29, 2008 10:35 am
- Location: The Netherlands
-
Contact:
Post
by bartbes »
You have to load love.filesystem first.
-
Astusvis
- Prole
- Posts: 33
- Joined: Fri Aug 05, 2011 5:22 pm
Post
by Astusvis »
_
Last edited by
Astusvis on Tue Oct 06, 2015 9:09 pm, edited 1 time in total.
-
Robin
- The Omniscient
- Posts: 6506
- Joined: Fri Feb 20, 2009 4:29 pm
- Location: The Netherlands
-
Contact:
Post
by Robin »
I'm not sure what the threads do, but aren't they in a loop? And if they're producing information, where is it kept?
Users browsing this forum: Bing [Bot] and 8 guests