mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-30 00:40:20 +02:00
* NEWS: Add entry. * doc/ref/api-scheduling.texi (Threads): Remove thread-cleanup docs. * libguile/threads.c (guilify_self_1, do_thread_exit): (scm_set_thread_cleanup_x, scm_thread_cleanup): Remove these. * libguile/threads.h (scm_i_thread): Remove cleanup_handler. * module/ice-9/threads.scm: * module/ice-9/deprecated.scm (thread-cleanup, set-thread-cleanup!): Remove. * test-suite/tests/threads.test: Adapt to test cancel-thread return values and not test thread-cleanup procs.
80 lines
2.6 KiB
Scheme
80 lines
2.6 KiB
Scheme
;;;; Copyright (C) 2003, 2005, 2006, 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
|
|
;;;;
|
|
;;;; This library is free software; you can redistribute it and/or
|
|
;;;; modify it under the terms of the GNU Lesser General Public
|
|
;;;; License as published by the Free Software Foundation; either
|
|
;;;; version 3 of the License, or (at your option) any later version.
|
|
;;;;
|
|
;;;; This library is distributed in the hope that it will be useful,
|
|
;;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
;;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
;;;; Lesser General Public License for more details.
|
|
;;;;
|
|
;;;; You should have received a copy of the GNU Lesser General Public
|
|
;;;; License along with this library; if not, write to the Free Software
|
|
;;;; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
|
;;;;
|
|
|
|
(define-module (ice-9 deprecated)
|
|
#:use-module ((ice-9 threads) #:prefix threads:))
|
|
|
|
(define-syntax-rule (define-deprecated var msg exp)
|
|
(begin
|
|
(define-syntax var
|
|
(lambda (x)
|
|
(issue-deprecation-warning msg)
|
|
(syntax-case x ()
|
|
((id arg (... ...)) #'(let ((x id)) (x arg (... ...))))
|
|
(id (identifier? #'id) #'exp))))
|
|
(export var)))
|
|
|
|
(define-deprecated _IONBF
|
|
"`_IONBF' is deprecated. Use the symbol 'none instead."
|
|
'none)
|
|
(define-deprecated _IOLBF
|
|
"`_IOLBF' is deprecated. Use the symbol 'line instead."
|
|
'line)
|
|
(define-deprecated _IOFBF
|
|
"`_IOFBF' is deprecated. Use the symbol 'block instead."
|
|
'block)
|
|
|
|
(define-syntax define-deprecated/threads
|
|
(lambda (stx)
|
|
(define (threads-name id)
|
|
(datum->syntax id (symbol-append 'threads: (syntax->datum id))))
|
|
(syntax-case stx ()
|
|
((_ name)
|
|
(with-syntax ((name* (threads-name #'name))
|
|
(warning (string-append
|
|
"Import (ice-9 threads) to have access to `"
|
|
(symbol->string (syntax->datum #'name)) "'.")))
|
|
#'(define-deprecated name warning name*))))))
|
|
|
|
(define-syntax-rule (define-deprecated/threads* name ...)
|
|
(begin (define-deprecated/threads name) ...))
|
|
|
|
(define-deprecated/threads*
|
|
call-with-new-thread
|
|
yield
|
|
cancel-thread
|
|
join-thread
|
|
thread?
|
|
make-mutex
|
|
make-recursive-mutex
|
|
lock-mutex
|
|
try-mutex
|
|
unlock-mutex
|
|
mutex?
|
|
mutex-owner
|
|
mutex-level
|
|
mutex-locked?
|
|
make-condition-variable
|
|
wait-condition-variable
|
|
signal-condition-variable
|
|
broadcast-condition-variable
|
|
condition-variable?
|
|
current-thread
|
|
all-threads
|
|
thread-exited?
|
|
total-processor-count
|
|
current-processor-count)
|